From 71c4f39e7ec9eff783a05959db2459b053d9bef6 Mon Sep 17 00:00:00 2001
From: awstools Creates an alias for a state machine that points to one or two versions of the same state machine. You can set your application to call StartExecution with an alias and update the version the alias uses without changing the client's code. You can also map an alias to split StartExecution requests between two
+ * versions of a state machine. To do this, add a second To create an alias that points to a single version, specify a single
+ * You can create up to 100 aliases for each state machine. You must delete unused aliases using the DeleteStateMachineAlias API action.
+ *
+ * Related operations:
+ *
+ * DescribeStateMachineAlias
+ *
+ * ListStateMachineAliases
+ *
+ * UpdateStateMachineAlias
+ *
+ * DeleteStateMachineAlias
+ * Updating or deleting a resource can cause an inconsistent state. This error occurs when there're concurrent requests for DeleteStateMachineVersion, PublishStateMachineVersion, or UpdateStateMachine with the HTTP Status Code: 409 The provided Amazon Resource Name (ARN) is not valid. The provided name is not valid. Could not find the referenced resource. The request would cause a service quota to be exceeded. HTTP Status Code: 402 The specified state machine is being deleted. The input does not satisfy the constraints specified by an Amazon Web Services service. Base exception class for all service exceptions from SFN service.
+CreateStateMachineAlias
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/createstatemachinealiascommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/createstatemachinealiascommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/createstatemachinealiascommandoutput.html)
+
@@ -250,6 +258,22 @@ DeleteStateMachine
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/deletestatemachinecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/deletestatemachinecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/deletestatemachinecommandoutput.html)
+
+DeleteStateMachineAlias
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/deletestatemachinealiascommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/deletestatemachinealiascommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/deletestatemachinealiascommandoutput.html)
+
+
+DeleteStateMachineVersion
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/deletestatemachineversioncommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/deletestatemachineversioncommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/deletestatemachineversioncommandoutput.html)
+
@@ -282,6 +306,14 @@ DescribeStateMachine
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/describestatemachinecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/describestatemachinecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/describestatemachinecommandoutput.html)
+
+DescribeStateMachineAlias
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/describestatemachinealiascommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/describestatemachinealiascommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/describestatemachinealiascommandoutput.html)
+
@@ -330,6 +362,14 @@ ListMapRuns
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/listmaprunscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/listmaprunscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/listmaprunscommandoutput.html)
+
+ListStateMachineAliases
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/liststatemachinealiasescommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/liststatemachinealiasescommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/liststatemachinealiasescommandoutput.html)
+
@@ -338,6 +378,14 @@ ListStateMachines
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/liststatemachinescommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/liststatemachinescommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/liststatemachinescommandoutput.html)
+
+ListStateMachineVersions
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/liststatemachineversionscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/liststatemachineversionscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/liststatemachineversionscommandoutput.html)
+
@@ -346,6 +394,14 @@ ListTagsForResource
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/listtagsforresourcecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/listtagsforresourcecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/listtagsforresourcecommandoutput.html)
+
+PublishStateMachineVersion
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/publishstatemachineversioncommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/publishstatemachineversioncommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/publishstatemachineversioncommandoutput.html)
+
@@ -427,3 +483,11 @@ UpdateStateMachine
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/updatestatemachinecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/updatestatemachinecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/updatestatemachinecommandoutput.html)
+UpdateStateMachineAlias
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/classes/updatestatemachinealiascommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/updatestatemachinealiascommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sfn/interfaces/updatestatemachinealiascommandoutput.html)
+
+RoutingConfig
object in the
+ * routingConfiguration
parameter. You must also specify the percentage of
+ * execution run requests each version should receive in both RoutingConfig
objects.
+ * Step Functions randomly chooses which version runs a given execution based on the
+ * percentage you specify.RoutingConfig
object with a weight
set to 100.CreateStateMachineAlias
is an idempotent API. Step Functions bases the
+ * idempotency check on the stateMachineArn
, description
,
+ * name
, and routingConfiguration
parameters. Requests that contain
+ * the same values for these parameters return a successful idempotent response without creating
+ * a duplicate resource.
+ *
+ * @example
+ * Use a bare-bones client and the command you need to make an API call.
+ * ```javascript
+ * import { SFNClient, CreateStateMachineAliasCommand } from "@aws-sdk/client-sfn"; // ES Modules import
+ * // const { SFNClient, CreateStateMachineAliasCommand } = require("@aws-sdk/client-sfn"); // CommonJS import
+ * const client = new SFNClient(config);
+ * const input = { // CreateStateMachineAliasInput
+ * description: "STRING_VALUE",
+ * name: "STRING_VALUE", // required
+ * routingConfiguration: [ // RoutingConfigurationList // required
+ * { // RoutingConfigurationListItem
+ * stateMachineVersionArn: "STRING_VALUE", // required
+ * weight: Number("int"), // required
+ * },
+ * ],
+ * };
+ * const command = new CreateStateMachineAliasCommand(input);
+ * const response = await client.send(command);
+ * // { // CreateStateMachineAliasOutput
+ * // stateMachineAliasArn: "STRING_VALUE", // required
+ * // creationDate: new Date("TIMESTAMP"), // required
+ * // };
+ *
+ * ```
+ *
+ * @param CreateStateMachineAliasCommandInput - {@link CreateStateMachineAliasCommandInput}
+ * @returns {@link CreateStateMachineAliasCommandOutput}
+ * @see {@link CreateStateMachineAliasCommandInput} for command's `input` shape.
+ * @see {@link CreateStateMachineAliasCommandOutput} for command's `response` shape.
+ * @see {@link SFNClientResolvedConfig | config} for SFNClient's `config` shape.
+ *
+ * @throws {@link ConflictException} (client fault)
+ * publish
parameter set to true
.
If you set the publish
parameter of this API action to true
, it
+ * publishes version 1
as the first revision of the state machine.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
*CreateStateMachine
is an idempotent API. Subsequent requests won’t create a
* duplicate resource if it was already created. CreateStateMachine
's idempotency
* check is based on the state machine name
, definition
,
- * type
, LoggingConfiguration
and
- * TracingConfiguration
. If a following request has a different
+ * type
, LoggingConfiguration
, and
+ * TracingConfiguration
. The check is also based on the publish
and versionDescription
parameters. If a following request has a different
* roleArn
or tags
, Step Functions will ignore these differences and treat
* it as an idempotent request of the previous. In this case, roleArn
and
* tags
will not be updated, even if they are different.
@@ -91,12 +93,15 @@ export interface CreateStateMachineCommandOutput extends CreateStateMachineOutpu
* tracingConfiguration: { // TracingConfiguration
* enabled: true || false,
* },
+ * publish: true || false,
+ * versionDescription: "STRING_VALUE",
* };
* const command = new CreateStateMachineCommand(input);
* const response = await client.send(command);
* // { // CreateStateMachineOutput
* // stateMachineArn: "STRING_VALUE", // required
* // creationDate: new Date("TIMESTAMP"), // required
+ * // stateMachineVersionArn: "STRING_VALUE",
* // };
*
* ```
@@ -107,6 +112,10 @@ export interface CreateStateMachineCommandOutput extends CreateStateMachineOutpu
* @see {@link CreateStateMachineCommandOutput} for command's `response` shape.
* @see {@link SFNClientResolvedConfig | config} for SFNClient's `config` shape.
*
+ * @throws {@link ConflictException} (client fault)
+ * Updating or deleting a resource can cause an inconsistent state. This error occurs when there're concurrent requests for DeleteStateMachineVersion, PublishStateMachineVersion, or UpdateStateMachine with the publish
parameter set to true
.
HTTP Status Code: 409
+ * * @throws {@link InvalidArn} (client fault) *The provided Amazon Resource Name (ARN) is not valid.
* @@ -141,6 +150,9 @@ export interface CreateStateMachineCommandOutput extends CreateStateMachineOutpu *You've exceeded the number of tags allowed for a resource. See the Limits Topic in the * Step Functions Developer Guide.
* + * @throws {@link ValidationException} (client fault) + *The input does not satisfy the constraints specified by an Amazon Web Services service.
+ * * @throws {@link SFNServiceException} *Base exception class for all service exceptions from SFN service.
* diff --git a/clients/client-sfn/src/commands/DeleteStateMachineAliasCommand.ts b/clients/client-sfn/src/commands/DeleteStateMachineAliasCommand.ts new file mode 100644 index 000000000000..92c876672d1e --- /dev/null +++ b/clients/client-sfn/src/commands/DeleteStateMachineAliasCommand.ts @@ -0,0 +1,181 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { DeleteStateMachineAliasInput, DeleteStateMachineAliasOutput } from "../models/models_0"; +import { de_DeleteStateMachineAliasCommand, se_DeleteStateMachineAliasCommand } from "../protocols/Aws_json1_0"; +import { ServiceInputTypes, ServiceOutputTypes, SFNClientResolvedConfig } from "../SFNClient"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DeleteStateMachineAliasCommand}. + */ +export interface DeleteStateMachineAliasCommandInput extends DeleteStateMachineAliasInput {} +/** + * @public + * + * The output of {@link DeleteStateMachineAliasCommand}. + */ +export interface DeleteStateMachineAliasCommandOutput extends DeleteStateMachineAliasOutput, __MetadataBearer {} + +/** + * @public + *Deletes a state machine alias.
+ *After you delete a state machine alias, you can't use it to start executions. When you + * delete a state machine alias, Step Functions doesn't delete the state machine versions + * that alias references.
+ *+ * Related operations: + *
+ *+ * CreateStateMachineAlias + *
+ *+ * DescribeStateMachineAlias + *
+ *+ * ListStateMachineAliases + *
+ *+ * UpdateStateMachineAlias + *
+ *Updating or deleting a resource can cause an inconsistent state. This error occurs when there're concurrent requests for DeleteStateMachineVersion, PublishStateMachineVersion, or UpdateStateMachine with the publish
parameter set to true
.
HTTP Status Code: 409
+ * + * @throws {@link InvalidArn} (client fault) + *The provided Amazon Resource Name (ARN) is not valid.
+ * + * @throws {@link ResourceNotFound} (client fault) + *Could not find the referenced resource.
+ * + * @throws {@link ValidationException} (client fault) + *The input does not satisfy the constraints specified by an Amazon Web Services service.
+ * + * @throws {@link SFNServiceException} + *Base exception class for all service exceptions from SFN service.
+ * + */ +export class DeleteStateMachineAliasCommand extends $Command< + DeleteStateMachineAliasCommandInput, + DeleteStateMachineAliasCommandOutput, + SFNClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: DeleteStateMachineAliasCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDeletes a state machine. This is an asynchronous operation: It sets the state machine's
* status to DELETING
and begins the deletion process.
If the given state machine Amazon Resource Name (ARN) is a qualified state machine ARN, it will fail with ValidationException.
- * - *A qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel
refers to a Distributed Map state with a label mapStateLabel
in the state machine named stateMachineName
.
A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.
+ *The following are some examples of qualified and unqualified state machine ARNs:
+ *The following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel
in a state machine named myStateMachine
.
+ * arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel
+ *
If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException
.
The following unqualified state machine ARN refers to a state machine named myStateMachine
.
+ * arn:partition:states:region:account-id:stateMachine:myStateMachine
+ *
This API action also deletes all versions and aliases associated with a state machine.
*For EXPRESS
state machines, the deletion will happen eventually (usually
+ *
For EXPRESS
state machines, the deletion happens eventually (usually in
* less than a minute). Running executions may emit logs after DeleteStateMachine
* API is called.
Deletes a state machine version. After + * you delete a version, you can't call StartExecution using that version's ARN + * or use + * the + * version with a state machine alias.
+ *Deleting a state machine version won't terminate its in-progress executions.
+ *You can't delete a state machine version currently referenced by one or more aliases. Before you delete a version, you must either delete the aliases or update them to point to another state machine version.
+ *+ * Related operations: + *
+ *+ * PublishStateMachineVersion + *
+ *+ * ListStateMachineVersions + *
+ *Updating or deleting a resource can cause an inconsistent state. This error occurs when there're concurrent requests for DeleteStateMachineVersion, PublishStateMachineVersion, or UpdateStateMachine with the publish
parameter set to true
.
HTTP Status Code: 409
+ * + * @throws {@link InvalidArn} (client fault) + *The provided Amazon Resource Name (ARN) is not valid.
+ * + * @throws {@link ValidationException} (client fault) + *The input does not satisfy the constraints specified by an Amazon Web Services service.
+ * + * @throws {@link SFNServiceException} + *Base exception class for all service exceptions from SFN service.
+ * + */ +export class DeleteStateMachineVersionCommand extends $Command< + DeleteStateMachineVersionCommandInput, + DeleteStateMachineVersionCommandOutput, + SFNClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: DeleteStateMachineVersionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackProvides all information about a state machine execution, such as the state machine associated with the execution, the execution input and output, and relevant execution metadata. Use this API action to return the Map Run ARN if the execution was dispatched by a Map Run.
+ *Provides information about a state machine execution, such as the state machine + * associated with the execution, the execution input and output, and relevant execution + * metadata. Use this API action to return the Map Run Amazon Resource Name (ARN) if the execution was + * dispatched by a Map Run.
+ *If you specify a version or alias ARN when you call the StartExecution
+ * API action, DescribeExecution
returns that ARN.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
*This API action is not supported by EXPRESS
state machine executions unless they were dispatched by a Map Run.
Executions of an EXPRESS
state machinearen't supported by DescribeExecution
unless a Map Run dispatched them.
The provided Amazon Resource Name (ARN) is not valid.
* * @throws {@link ResourceNotFound} (client fault) - *Could not find the referenced resource. Only state machine and activity ARNs are - * supported.
+ *Could not find the referenced resource.
* * @throws {@link SFNServiceException} *Base exception class for all service exceptions from SFN service.
diff --git a/clients/client-sfn/src/commands/DescribeStateMachineAliasCommand.ts b/clients/client-sfn/src/commands/DescribeStateMachineAliasCommand.ts new file mode 100644 index 000000000000..5ccfbbb3216b --- /dev/null +++ b/clients/client-sfn/src/commands/DescribeStateMachineAliasCommand.ts @@ -0,0 +1,193 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { + DescribeStateMachineAliasInput, + DescribeStateMachineAliasOutput, + DescribeStateMachineAliasOutputFilterSensitiveLog, +} from "../models/models_0"; +import { de_DescribeStateMachineAliasCommand, se_DescribeStateMachineAliasCommand } from "../protocols/Aws_json1_0"; +import { ServiceInputTypes, ServiceOutputTypes, SFNClientResolvedConfig } from "../SFNClient"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DescribeStateMachineAliasCommand}. + */ +export interface DescribeStateMachineAliasCommandInput extends DescribeStateMachineAliasInput {} +/** + * @public + * + * The output of {@link DescribeStateMachineAliasCommand}. + */ +export interface DescribeStateMachineAliasCommandOutput extends DescribeStateMachineAliasOutput, __MetadataBearer {} + +/** + * @public + *Returns details about a state machine alias.
+ *+ * Related operations: + *
+ *+ * CreateStateMachineAlias + *
+ *+ * ListStateMachineAliases + *
+ *+ * UpdateStateMachineAlias + *
+ *+ * DeleteStateMachineAlias + *
+ *The provided Amazon Resource Name (ARN) is not valid.
+ * + * @throws {@link ResourceNotFound} (client fault) + *Could not find the referenced resource.
+ * + * @throws {@link ValidationException} (client fault) + *The input does not satisfy the constraints specified by an Amazon Web Services service.
+ * + * @throws {@link SFNServiceException} + *Base exception class for all service exceptions from SFN service.
+ * + */ +export class DescribeStateMachineAliasCommand extends $Command< + DescribeStateMachineAliasCommandInput, + DescribeStateMachineAliasCommandOutput, + SFNClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: DescribeStateMachineAliasCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackProvides information about a state machine's definition, its IAM role Amazon Resource Name (ARN), and configuration. If the state machine ARN is a qualified state machine ARN, the response returned includes the Map
state's label.
A qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel
refers to a Distributed Map state with a label mapStateLabel
in the state machine named stateMachineName
.
Provides information about a state machine's definition, its IAM role Amazon Resource Name (ARN), and configuration.
+ *A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.
+ *The following are some examples of qualified and unqualified state machine ARNs:
+ *The following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel
in a state machine named myStateMachine
.
+ * arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel
+ *
If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException
.
The following qualified state machine ARN refers to an alias named PROD
.
+ * arn:
+ *
If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.
+ *The following unqualified state machine ARN refers to a state machine named myStateMachine
.
+ * arn:
+ *
This API action returns the details for a state machine version if the
+ * stateMachineArn
you specify is a state machine version ARN.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
*Provides information about a state machine's definition, its execution role ARN, and configuration. If an execution was dispatched by a Map Run, the Map Run is returned in the response. Additionally, the state machine returned will be the state machine associated with the Map Run.
+ *Provides information about a state machine's definition, its execution role ARN, and + * configuration. If a Map Run dispatched the execution, this action returns the Map Run + * Amazon Resource Name (ARN) in the response. + * The + * state machine returned is the state machine associated with the + * Map Run.
*This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
*taskToken
with a null string.
- *
* This API action isn't logged in CloudTrail.
*Workers should set their client side socket timeout to at least 65 seconds (5 seconds * higher than the maximum time the service may hold the poll request).
diff --git a/clients/client-sfn/src/commands/GetExecutionHistoryCommand.ts b/clients/client-sfn/src/commands/GetExecutionHistoryCommand.ts index e98b9ec926f0..3bb8124e8736 100644 --- a/clients/client-sfn/src/commands/GetExecutionHistoryCommand.ts +++ b/clients/client-sfn/src/commands/GetExecutionHistoryCommand.ts @@ -163,6 +163,8 @@ export interface GetExecutionHistoryCommandOutput extends GetExecutionHistoryOut * // truncated: true || false, * // }, * // roleArn: "STRING_VALUE", + * // stateMachineAliasArn: "STRING_VALUE", + * // stateMachineVersionArn: "STRING_VALUE", * // }, * // executionSucceededEventDetails: { // ExecutionSucceededEventDetails * // output: "STRING_VALUE", diff --git a/clients/client-sfn/src/commands/ListExecutionsCommand.ts b/clients/client-sfn/src/commands/ListExecutionsCommand.ts index 2b14e244acc8..ebdf6e7b0cb0 100644 --- a/clients/client-sfn/src/commands/ListExecutionsCommand.ts +++ b/clients/client-sfn/src/commands/ListExecutionsCommand.ts @@ -37,6 +37,7 @@ export interface ListExecutionsCommandOutput extends ListExecutionsOutput, __Met /** * @public *Lists all executions of a state machine or a Map Run. You can list all executions related to a state machine by specifying a state machine Amazon Resource Name (ARN), or those related to a Map Run by specifying a Map Run ARN.
+ *You can also provide a state machine alias ARN or version ARN to list the executions associated with a specific alias or version.
*Results are * sorted by time, with the most recent execution first.
*If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.
@@ -71,6 +72,8 @@ export interface ListExecutionsCommandOutput extends ListExecutionsOutput, __Met
* // stopDate: new Date("TIMESTAMP"),
* // mapRunArn: "STRING_VALUE",
* // itemCount: Number("int"),
+ * // stateMachineVersionArn: "STRING_VALUE",
+ * // stateMachineAliasArn: "STRING_VALUE",
* // },
* // ],
* // nextToken: "STRING_VALUE",
@@ -91,8 +94,7 @@ export interface ListExecutionsCommandOutput extends ListExecutionsOutput, __Met
*
The provided token is not valid.
* * @throws {@link ResourceNotFound} (client fault) - *Could not find the referenced resource. Only state machine and activity ARNs are - * supported.
+ *Could not find the referenced resource.
* * @throws {@link StateMachineDoesNotExist} (client fault) *The specified state machine does not exist.
diff --git a/clients/client-sfn/src/commands/ListStateMachineAliasesCommand.ts b/clients/client-sfn/src/commands/ListStateMachineAliasesCommand.ts new file mode 100644 index 000000000000..54b17832873c --- /dev/null +++ b/clients/client-sfn/src/commands/ListStateMachineAliasesCommand.ts @@ -0,0 +1,193 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { ListStateMachineAliasesInput, ListStateMachineAliasesOutput } from "../models/models_0"; +import { de_ListStateMachineAliasesCommand, se_ListStateMachineAliasesCommand } from "../protocols/Aws_json1_0"; +import { ServiceInputTypes, ServiceOutputTypes, SFNClientResolvedConfig } from "../SFNClient"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListStateMachineAliasesCommand}. + */ +export interface ListStateMachineAliasesCommandInput extends ListStateMachineAliasesInput {} +/** + * @public + * + * The output of {@link ListStateMachineAliasesCommand}. + */ +export interface ListStateMachineAliasesCommandOutput extends ListStateMachineAliasesOutput, __MetadataBearer {} + +/** + * @public + *Lists aliases for a specified state machine ARN. Results are sorted by time, with the most recently created aliases listed first.
+ *To list aliases that reference a state machine version, you can specify the version ARN in the stateMachineArn
parameter.
If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.
+ * Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
+ * Related operations: + *
+ *+ * CreateStateMachineAlias + *
+ *+ * DescribeStateMachineAlias + *
+ *+ * UpdateStateMachineAlias + *
+ *+ * DeleteStateMachineAlias + *
+ *The provided Amazon Resource Name (ARN) is not valid.
+ * + * @throws {@link InvalidToken} (client fault) + *The provided token is not valid.
+ * + * @throws {@link ResourceNotFound} (client fault) + *Could not find the referenced resource.
+ * + * @throws {@link StateMachineDeleting} (client fault) + *The specified state machine is being deleted.
+ * + * @throws {@link StateMachineDoesNotExist} (client fault) + *The specified state machine does not exist.
+ * + * @throws {@link SFNServiceException} + *Base exception class for all service exceptions from SFN service.
+ * + */ +export class ListStateMachineAliasesCommand extends $Command< + ListStateMachineAliasesCommandInput, + ListStateMachineAliasesCommandOutput, + SFNClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: ListStateMachineAliasesCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackLists versions for the specified state machine Amazon Resource Name (ARN).
+ *The results are sorted in descending order of the version creation time.
+ *If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.
+ * Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
+ * Related operations: + *
+ *+ * PublishStateMachineVersion + *
+ *+ * DeleteStateMachineVersion + *
+ *The provided Amazon Resource Name (ARN) is not valid.
+ * + * @throws {@link InvalidToken} (client fault) + *The provided token is not valid.
+ * + * @throws {@link ValidationException} (client fault) + *The input does not satisfy the constraints specified by an Amazon Web Services service.
+ * + * @throws {@link SFNServiceException} + *Base exception class for all service exceptions from SFN service.
+ * + */ +export class ListStateMachineVersionsCommand extends $Command< + ListStateMachineVersionsCommandInput, + ListStateMachineVersionsCommandOutput, + SFNClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: ListStateMachineVersionsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackThe provided Amazon Resource Name (ARN) is not valid.
* * @throws {@link ResourceNotFound} (client fault) - *Could not find the referenced resource. Only state machine and activity ARNs are - * supported.
+ *Could not find the referenced resource.
* * @throws {@link SFNServiceException} *Base exception class for all service exceptions from SFN service.
diff --git a/clients/client-sfn/src/commands/PublishStateMachineVersionCommand.ts b/clients/client-sfn/src/commands/PublishStateMachineVersionCommand.ts new file mode 100644 index 000000000000..4913d7df5142 --- /dev/null +++ b/clients/client-sfn/src/commands/PublishStateMachineVersionCommand.ts @@ -0,0 +1,198 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { + PublishStateMachineVersionInput, + PublishStateMachineVersionInputFilterSensitiveLog, + PublishStateMachineVersionOutput, +} from "../models/models_0"; +import { de_PublishStateMachineVersionCommand, se_PublishStateMachineVersionCommand } from "../protocols/Aws_json1_0"; +import { ServiceInputTypes, ServiceOutputTypes, SFNClientResolvedConfig } from "../SFNClient"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link PublishStateMachineVersionCommand}. + */ +export interface PublishStateMachineVersionCommandInput extends PublishStateMachineVersionInput {} +/** + * @public + * + * The output of {@link PublishStateMachineVersionCommand}. + */ +export interface PublishStateMachineVersionCommandOutput extends PublishStateMachineVersionOutput, __MetadataBearer {} + +/** + * @public + *Creates a version from the + * current revision of a state machine. Use versions to create immutable snapshots of your state + * machine. You can start executions from versions either directly or with an alias. To create an + * alias, use CreateStateMachineAlias.
+ *You can publish up to 1000 versions for each state machine. You must manually delete unused versions using the DeleteStateMachineVersion API action.
+ *
+ * PublishStateMachineVersion
is an idempotent API. It doesn't create a
+ * duplicate state machine version if it already exists for the current revision. Step Functions bases PublishStateMachineVersion
's idempotency check on the
+ * stateMachineArn
, name
, and revisionId
parameters.
+ * Requests with the same parameters return a successful idempotent response. If you don't
+ * specify a revisionId
, Step Functions checks for a previously published
+ * version of the state machine's current revision.
+ * Related operations: + *
+ *+ * DeleteStateMachineVersion + *
+ *+ * ListStateMachineVersions + *
+ *Updating or deleting a resource can cause an inconsistent state. This error occurs when there're concurrent requests for DeleteStateMachineVersion, PublishStateMachineVersion, or UpdateStateMachine with the publish
parameter set to true
.
HTTP Status Code: 409
+ * + * @throws {@link InvalidArn} (client fault) + *The provided Amazon Resource Name (ARN) is not valid.
+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *The request would cause a service quota to be exceeded.
+ *HTTP Status Code: 402
+ * + * @throws {@link StateMachineDeleting} (client fault) + *The specified state machine is being deleted.
+ * + * @throws {@link StateMachineDoesNotExist} (client fault) + *The specified state machine does not exist.
+ * + * @throws {@link ValidationException} (client fault) + *The input does not satisfy the constraints specified by an Amazon Web Services service.
+ * + * @throws {@link SFNServiceException} + *Base exception class for all service exceptions from SFN service.
+ * + */ +export class PublishStateMachineVersionCommand extends $Command< + PublishStateMachineVersionCommandInput, + PublishStateMachineVersionCommandOutput, + SFNClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: PublishStateMachineVersionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackStarts a state machine execution. If the given state machine Amazon Resource Name (ARN) is a qualified state machine ARN, it will fail with ValidationException.
- * - *A qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel
refers to a Distributed Map state with a label mapStateLabel
in the state machine named stateMachineName
.
Starts a state machine execution.
+ *A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.
+ *The following are some examples of qualified and unqualified state machine ARNs:
+ *The following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel
in a state machine named myStateMachine
.
+ * arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel
+ *
If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException
.
The following qualified state machine ARN refers to an alias named PROD
.
+ * arn:
+ *
If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.
+ *The following unqualified state machine ARN refers to a state machine named myStateMachine
.
+ * arn:
+ *
If you start an execution with an unqualified state machine ARN, Step Functions uses the latest revision of the state machine for the execution.
+ *To start executions of a state machine version, call
+ * StartExecution
and provide the version ARN or the ARN of an alias that points to the version.
* StartExecution
is idempotent for STANDARD
workflows. For a
- * STANDARD
workflow, if StartExecution
is called with the same
- * name and input as a running execution, the call will succeed and return the same response as
- * the original request. If the execution is closed or if the input is different, it will
- * return a 400 ExecutionAlreadyExists
error. Names can be reused after 90 days.
STANDARD
workflow, if you call StartExecution
with the same name
+ * and input as a running execution, the call succeeds and return the same response as the
+ * original request. If the execution is closed or if the input is different, it returns a
+ * 400 ExecutionAlreadyExists
error. You can reuse names after 90 days.
*
- * StartExecution
is not idempotent for EXPRESS
workflows.
StartExecution
isn't idempotent for EXPRESS
workflows.
* The provided Amazon Resource Name (ARN) is not valid.
* * @throws {@link ResourceNotFound} (client fault) - *Could not find the referenced resource. Only state machine and activity ARNs are - * supported.
+ *Could not find the referenced resource.
* * @throws {@link TooManyTags} (client fault) *You've exceeded the number of tags allowed for a resource. See the Limits Topic in the diff --git a/clients/client-sfn/src/commands/UntagResourceCommand.ts b/clients/client-sfn/src/commands/UntagResourceCommand.ts index 64ab99d3c403..301078363ac3 100644 --- a/clients/client-sfn/src/commands/UntagResourceCommand.ts +++ b/clients/client-sfn/src/commands/UntagResourceCommand.ts @@ -65,8 +65,7 @@ export interface UntagResourceCommandOutput extends UntagResourceOutput, __Metad *
The provided Amazon Resource Name (ARN) is not valid.
* * @throws {@link ResourceNotFound} (client fault) - *Could not find the referenced resource. Only state machine and activity ARNs are - * supported.
+ *Could not find the referenced resource.
* * @throws {@link SFNServiceException} *Base exception class for all service exceptions from SFN service.
diff --git a/clients/client-sfn/src/commands/UpdateMapRunCommand.ts b/clients/client-sfn/src/commands/UpdateMapRunCommand.ts index ed6d2dce3e5a..c9487a7b9da0 100644 --- a/clients/client-sfn/src/commands/UpdateMapRunCommand.ts +++ b/clients/client-sfn/src/commands/UpdateMapRunCommand.ts @@ -65,8 +65,7 @@ export interface UpdateMapRunCommandOutput extends UpdateMapRunOutput, __Metadat *The provided Amazon Resource Name (ARN) is not valid.
* * @throws {@link ResourceNotFound} (client fault) - *Could not find the referenced resource. Only state machine and activity ARNs are - * supported.
+ *Could not find the referenced resource.
* * @throws {@link ValidationException} (client fault) *The input does not satisfy the constraints specified by an Amazon Web Services service.
diff --git a/clients/client-sfn/src/commands/UpdateStateMachineAliasCommand.ts b/clients/client-sfn/src/commands/UpdateStateMachineAliasCommand.ts new file mode 100644 index 000000000000..932072409f8b --- /dev/null +++ b/clients/client-sfn/src/commands/UpdateStateMachineAliasCommand.ts @@ -0,0 +1,205 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, +} from "@aws-sdk/types"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { SerdeContext as __SerdeContext } from "@smithy/types"; + +import { + UpdateStateMachineAliasInput, + UpdateStateMachineAliasInputFilterSensitiveLog, + UpdateStateMachineAliasOutput, +} from "../models/models_0"; +import { de_UpdateStateMachineAliasCommand, se_UpdateStateMachineAliasCommand } from "../protocols/Aws_json1_0"; +import { ServiceInputTypes, ServiceOutputTypes, SFNClientResolvedConfig } from "../SFNClient"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link UpdateStateMachineAliasCommand}. + */ +export interface UpdateStateMachineAliasCommandInput extends UpdateStateMachineAliasInput {} +/** + * @public + * + * The output of {@link UpdateStateMachineAliasCommand}. + */ +export interface UpdateStateMachineAliasCommandOutput extends UpdateStateMachineAliasOutput, __MetadataBearer {} + +/** + * @public + *Updates the configuration of an existing state machine alias by modifying its description
or routingConfiguration
.
You must specify at least one of the description
or routingConfiguration
parameters to update a state machine alias.
+ * UpdateStateMachineAlias
is an idempotent API. Step Functions bases the
+ * idempotency check on the stateMachineAliasArn
, description
, and
+ * routingConfiguration
parameters. Requests with the same parameters return an
+ * idempotent response.
This operation is eventually consistent. All StartExecution requests
+ * made within a few seconds use the latest alias configuration. Executions started immediately
+ * after calling UpdateStateMachineAlias
may use the previous routing
+ * configuration.
+ * Related operations: + *
+ *+ * CreateStateMachineAlias + *
+ *+ * DescribeStateMachineAlias + *
+ *+ * ListStateMachineAliases + *
+ *+ * DeleteStateMachineAlias + *
+ *Updating or deleting a resource can cause an inconsistent state. This error occurs when there're concurrent requests for DeleteStateMachineVersion, PublishStateMachineVersion, or UpdateStateMachine with the publish
parameter set to true
.
HTTP Status Code: 409
+ * + * @throws {@link InvalidArn} (client fault) + *The provided Amazon Resource Name (ARN) is not valid.
+ * + * @throws {@link ResourceNotFound} (client fault) + *Could not find the referenced resource.
+ * + * @throws {@link ValidationException} (client fault) + *The input does not satisfy the constraints specified by an Amazon Web Services service.
+ * + * @throws {@link SFNServiceException} + *Base exception class for all service exceptions from SFN service.
+ * + */ +export class UpdateStateMachineAliasCommand extends $Command< + UpdateStateMachineAliasCommandInput, + UpdateStateMachineAliasCommandOutput, + SFNClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: UpdateStateMachineAliasCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackdefinition
and roleArn
. You must include at
* least one of definition
or roleArn
or you will receive a
* MissingRequiredParameter
error.
- *
- * If the given state machine Amazon Resource Name (ARN) is a qualified state machine ARN, it will fail with ValidationException.
- * *A qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel
refers to a Distributed Map state with a label mapStateLabel
in the state machine named stateMachineName
.
A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.
+ *The following are some examples of qualified and unqualified state machine ARNs:
+ *The following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel
in a state machine named myStateMachine
.
+ * arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel
+ *
If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException
.
The following qualified state machine ARN refers to an alias named PROD
.
+ * arn:
+ *
If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.
+ *The following unqualified state machine ARN refers to a state machine named myStateMachine
.
+ * arn:
+ *
After you update your state machine, you can set the publish
parameter to
+ * true
in the same action to publish a new version. This
+ * way, you can opt-in to strict versioning of your state machine.
All StartExecution
calls within a few seconds will use the updated
- * definition
and roleArn
. Executions started immediately after
- * calling UpdateStateMachine
may use the previous state machine
+ *
Step Functions assigns monotonically increasing integers for state machine versions, starting at version number 1.
+ *All StartExecution
calls within a few seconds use the updated
+ * definition
and roleArn
. Executions started immediately after you
+ * call UpdateStateMachine
may use the previous state machine
* definition
and roleArn
.
Updating or deleting a resource can cause an inconsistent state. This error occurs when there're concurrent requests for DeleteStateMachineVersion, PublishStateMachineVersion, or UpdateStateMachine with the publish
parameter set to true
.
HTTP Status Code: 409
+ * * @throws {@link InvalidArn} (client fault) *The provided Amazon Resource Name (ARN) is not valid.
* @@ -112,6 +150,10 @@ export interface UpdateStateMachineCommandOutput extends UpdateStateMachineOutpu *Request is missing a required parameter. This error occurs if both definition
* and roleArn
are not specified.
The request would cause a service quota to be exceeded.
+ *HTTP Status Code: 402
+ * * @throws {@link StateMachineDeleting} (client fault) *The specified state machine is being deleted.
* diff --git a/clients/client-sfn/src/commands/index.ts b/clients/client-sfn/src/commands/index.ts index c16b304773ad..31ea0778db47 100644 --- a/clients/client-sfn/src/commands/index.ts +++ b/clients/client-sfn/src/commands/index.ts @@ -1,11 +1,15 @@ // smithy-typescript generated code export * from "./CreateActivityCommand"; +export * from "./CreateStateMachineAliasCommand"; export * from "./CreateStateMachineCommand"; export * from "./DeleteActivityCommand"; +export * from "./DeleteStateMachineAliasCommand"; export * from "./DeleteStateMachineCommand"; +export * from "./DeleteStateMachineVersionCommand"; export * from "./DescribeActivityCommand"; export * from "./DescribeExecutionCommand"; export * from "./DescribeMapRunCommand"; +export * from "./DescribeStateMachineAliasCommand"; export * from "./DescribeStateMachineCommand"; export * from "./DescribeStateMachineForExecutionCommand"; export * from "./GetActivityTaskCommand"; @@ -13,8 +17,11 @@ export * from "./GetExecutionHistoryCommand"; export * from "./ListActivitiesCommand"; export * from "./ListExecutionsCommand"; export * from "./ListMapRunsCommand"; +export * from "./ListStateMachineAliasesCommand"; +export * from "./ListStateMachineVersionsCommand"; export * from "./ListStateMachinesCommand"; export * from "./ListTagsForResourceCommand"; +export * from "./PublishStateMachineVersionCommand"; export * from "./SendTaskFailureCommand"; export * from "./SendTaskHeartbeatCommand"; export * from "./SendTaskSuccessCommand"; @@ -24,4 +31,5 @@ export * from "./StopExecutionCommand"; export * from "./TagResourceCommand"; export * from "./UntagResourceCommand"; export * from "./UpdateMapRunCommand"; +export * from "./UpdateStateMachineAliasCommand"; export * from "./UpdateStateMachineCommand"; diff --git a/clients/client-sfn/src/endpoint/EndpointParameters.ts b/clients/client-sfn/src/endpoint/EndpointParameters.ts index 6e2cc4bf635a..341af4e66d19 100644 --- a/clients/client-sfn/src/endpoint/EndpointParameters.ts +++ b/clients/client-sfn/src/endpoint/EndpointParameters.ts @@ -25,7 +25,7 @@ export const resolveClientEndpointParameters =Updating or deleting a resource can cause an inconsistent state. This error occurs when there're concurrent requests for DeleteStateMachineVersion, PublishStateMachineVersion, or UpdateStateMachine with the publish
parameter set to true
.
HTTP Status Code: 409
+ */ +export class ConflictException extends __BaseException { + readonly name: "ConflictException" = "ConflictException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeSelects whether X-Ray tracing is enabled.
*/ tracingConfiguration?: TracingConfiguration; + + /** + *Set to true
to publish the first version of the state machine during creation. The default is false
.
Sets description about the state machine version. You can only set the description if the publish
parameter is set to true
. Otherwise, if you set versionDescription
, but publish
to false
, this API action throws ValidationException
.
The date the state machine is created.
*/ creationDate: Date | undefined; + + /** + *The Amazon Resource Name (ARN) that identifies the created state machine version. If you do not set the publish
parameter to true
, this field returns null value.
The input does not satisfy the constraints specified by an Amazon Web Services service.
+ */ +export class ValidationException extends __BaseException { + readonly name: "ValidationException" = "ValidationException"; + readonly $fault: "client" = "client"; + /** + *The input does not satisfy the constraints specified by an Amazon Web Services service.
+ */ + reason?: ValidationExceptionReason | string; + + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeContains details about the routing configuration of a state machine alias. In a routing + * configuration, you define an array of objects that specify up to two state machine versions. + * You also specify the percentage of traffic to be routed to each version.
+ */ +export interface RoutingConfigurationListItem { + /** + *The Amazon Resource Name (ARN) that identifies one or two state machine versions defined in the routing configuration.
+ *If you specify the ARN of a second version, it must belong to the same state machine as the first version.
+ */ + stateMachineVersionArn: string | undefined; + + /** + *The percentage of traffic you want to route to the second state machine + * version. The sum of the weights in the routing + * configuration must be equal to 100.
+ */ + weight: number | undefined; +} + +/** + * @public + */ +export interface CreateStateMachineAliasInput { + /** + *A description for the state machine alias.
+ */ + description?: string; + + /** + *The name of the state machine alias.
+ *To avoid conflict with version ARNs, don't use an integer in the name of the alias.
+ */ + name: string | undefined; + + /** + *The routing configuration of a state machine alias. The routing configuration shifts
+ * execution traffic between two state machine versions. routingConfiguration
+ * contains an array of RoutingConfig
objects that specify up to two state machine
+ * versions. Step Functions then randomly choses which version to run an execution with based
+ * on the weight assigned to each RoutingConfig
.
The Amazon Resource Name (ARN) that identifies the created state machine alias.
+ */ + stateMachineAliasArn: string | undefined; + + /** + *The date the state machine alias was created.
+ */ + creationDate: Date | undefined; +} + +/** + * @public + *Could not find the referenced resource.
+ */ +export class ResourceNotFound extends __BaseException { + readonly name: "ResourceNotFound" = "ResourceNotFound"; + readonly $fault: "client" = "client"; + resourceName?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeThe request would cause a service quota to be exceeded.
+ *HTTP Status Code: 402
+ */ +export class ServiceQuotaExceededException extends __BaseException { + readonly name: "ServiceQuotaExceededException" = "ServiceQuotaExceededException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeThe Amazon Resource Name (ARN) of the state machine alias to delete.
+ */ + stateMachineAliasArn: string | undefined; +} /** * @public */ -export type ValidationExceptionReason = (typeof ValidationExceptionReason)[keyof typeof ValidationExceptionReason]; +export interface DeleteStateMachineAliasOutput {} /** * @public - *The input does not satisfy the constraints specified by an Amazon Web Services service.
*/ -export class ValidationException extends __BaseException { - readonly name: "ValidationException" = "ValidationException"; - readonly $fault: "client" = "client"; +export interface DeleteStateMachineVersionInput { /** - *The input does not satisfy the constraints specified by an Amazon Web Services service.
+ *The Amazon Resource Name (ARN) of the state machine version to delete.
*/ - reason?: ValidationExceptionReason | string; - - /** - * @internal - */ - constructor(opts: __ExceptionOptionTypeIf the execution has already ended, the date the execution stopped.
+ *If the execution ended, the date the execution stopped.
*/ stopDate?: Date; @@ -957,6 +1128,20 @@ export interface DescribeExecutionOutput { *The cause string if the state machine execution failed.
*/ cause?: string; + + /** + *The Amazon Resource Name (ARN) of the state machine version associated with the execution. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, stateMachineARN:1
.
If you start an execution from a StartExecution
request without specifying a
+ * state machine version or alias ARN, Step Functions returns a null value.
The Amazon Resource Name (ARN) of the state machine alias associated with the execution. The alias ARN is a combination of state machine ARN and the alias name separated by a colon (:). For example, stateMachineARN:PROD
.
If you start an execution from a StartExecution
request with a
+ * state machine version ARN, this field will be null.
Could not find the referenced resource. Only state machine and activity ARNs are - * supported.
- */ -export class ResourceNotFound extends __BaseException { - readonly name: "ResourceNotFound" = "ResourceNotFound"; - readonly $fault: "client" = "client"; - resourceName?: string; - /** - * @internal - */ - constructor(opts: __ExceptionOptionTypeThe Amazon Resource Name (ARN) of the state machine to describe.
+ *The Amazon Resource Name (ARN) of the state machine for which you want the information.
+ *If you specify a state machine version ARN, this API returns details about that version. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, stateMachineARN:1
.
The Amazon Resource Name (ARN) that identifies the state machine.
+ *If you specified a state machine version ARN in your request, the API returns the version ARN. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, stateMachineARN:1
.
The date the state machine is created.
+ *For a state machine version, creationDate
is the date the version was created.
A user-defined or an auto-generated string that identifies a Map
state. This parameter is present only if the stateMachineArn
specified in input is a qualified state machine ARN.
The revision identifier for the state machine.
+ *Use the revisionId
parameter to compare between versions of a state machine
+ * configuration used for executions without performing a diff of the properties, such as
+ * definition
and roleArn
.
The description of the state machine version.
+ */ + description?: string; } /** @@ -1299,6 +1477,52 @@ export class StateMachineDoesNotExist extends __BaseException { } } +/** + * @public + */ +export interface DescribeStateMachineAliasInput { + /** + *The Amazon Resource Name (ARN) of the state machine alias.
+ */ + stateMachineAliasArn: string | undefined; +} + +/** + * @public + */ +export interface DescribeStateMachineAliasOutput { + /** + *The Amazon Resource Name (ARN) of the state machine alias.
+ */ + stateMachineAliasArn?: string; + + /** + *The name of the state machine alias.
+ */ + name?: string; + + /** + *A description of the alias.
+ */ + description?: string; + + /** + *The routing configuration of the alias.
+ */ + routingConfiguration?: RoutingConfigurationListItem[]; + + /** + *The date the state machine alias was created.
+ */ + creationDate?: Date; + + /** + *The date the state machine alias was last updated.
+ *For a newly created state machine, this is the same as the creation date.
+ */ + updateDate?: Date; +} + /** * @public */ @@ -1359,6 +1583,12 @@ export interface DescribeStateMachineForExecutionOutput { *A user-defined or an auto-generated string that identifies a Map
state. This field is returned only if the executionArn
is a child workflow execution that was started by a Distributed Map state.
The revision identifier for the state machine. The first revision ID when you create the state machine is null.
+ *Use the state machine revisionId
parameter to compare the revision of a state machine with the configuration of the state machine used for executions without performing a diff of the properties, such as definition
and roleArn
.
The Amazon Resource Name (ARN) of the IAM role used for executing Lambda tasks.
*/ roleArn?: string; + + /** + *The Amazon Resource Name (ARN) that identifies a state machine alias used for starting the state machine execution.
+ */ + stateMachineAliasArn?: string; + + /** + *The Amazon Resource Name (ARN) that identifies a state machine version used for starting the state machine execution.
+ */ + stateMachineVersionArn?: string; } /** @@ -2319,6 +2559,7 @@ export interface ListExecutionsInput { /** *The Amazon Resource Name (ARN) of the state machine whose executions is listed.
*You can specify either a mapRunArn
or a stateMachineArn
, but not both.
You can also return a list of executions associated with a specific alias or version, by specifying an alias ARN or a version ARN in the stateMachineArn
parameter.
The Amazon Resource Name (ARN) of the executed state machine.
+ *The Amazon Resource Name (ARN) of the state machine that ran the execution.
*/ stateMachineArn: string | undefined; @@ -2414,6 +2655,19 @@ export interface ExecutionListItem { *The total number of items processed in a child workflow execution. This field is returned only if mapRunArn
was specified in the ListExecutions
API action. If stateMachineArn
was specified in ListExecutions
, the itemCount
field isn't returned.
The Amazon Resource Name (ARN) of the state machine version associated with the execution.
+ *If the state machine execution was started with an unqualified ARN, it returns null.
+ *If the execution was started using a stateMachineAliasArn
, both the stateMachineAliasArn
and stateMachineVersionArn
parameters contain the respective values.
The Amazon Resource Name (ARN) of the state machine alias used to start an execution.
+ *If the state machine execution was started with an unqualified ARN or a version ARN, it returns null.
+ */ + stateMachineAliasArn?: string; } /** @@ -2502,6 +2756,62 @@ export interface ListMapRunsOutput { nextToken?: string; } +/** + * @public + */ +export interface ListStateMachineAliasesInput { + /** + *The Amazon Resource Name (ARN) of the state machine for which you want to list aliases.
+ *If you specify a state machine version ARN, this API returns a list of aliases for that version.
+ */ + stateMachineArn: string | undefined; + + /** + *If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.
+ * Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.
+ * The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
+ */ + maxResults?: number; +} + +/** + * @public + *Contains details about a specific state machine alias.
+ */ +export interface StateMachineAliasListItem { + /** + *The Amazon Resource Name (ARN) that identifies a state machine alias. The alias ARN is a combination of state machine ARN and the alias name separated by a colon (:). For example, stateMachineARN:PROD
.
The creation date of a state machine alias.
+ */ + creationDate: Date | undefined; +} + +/** + * @public + */ +export interface ListStateMachineAliasesOutput { + /** + *Aliases for the state machine.
+ */ + stateMachineAliases: StateMachineAliasListItem[] | undefined; + + /** + *If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.
+ * Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
The Amazon Resource Name (ARN) of the state machine.
+ */ + stateMachineArn: string | undefined; + + /** + *If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.
+ * Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.
+ * The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
+ */ + maxResults?: number; +} + +/** + * @public + *Contains details about a specific state machine version.
+ */ +export interface StateMachineVersionListItem { + /** + *The Amazon Resource Name (ARN) that identifies a state machine version. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, stateMachineARN:1
.
The creation date of a state machine version.
+ */ + creationDate: Date | undefined; +} + +/** + * @public + */ +export interface ListStateMachineVersionsOutput { + /** + *Versions for the state machine.
+ */ + stateMachineVersions: StateMachineVersionListItem[] | undefined; + + /** + *If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.
+ * Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
The Amazon Resource Name (ARN) of the state machine.
+ */ + stateMachineArn: string | undefined; + + /** + *Only publish the state machine version if the current state machine's revision ID matches the specified ID.
+ *Use this option to avoid publishing a version if the state machine changed since you last
+ * updated it. If the specified revision ID doesn't match the state machine's current revision
+ * ID, the API returns ConflictException
.
To specify an initial revision ID for a state machine with no revision ID assigned,
+ * specify the string INITIAL
for the revisionId
parameter. For
+ * example, you can specify a revisionID
of INITIAL
when you create a
+ * state machine using the CreateStateMachine API action.
An optional description of the state machine version.
+ */ + description?: string; +} + +/** + * @public + */ +export interface PublishStateMachineVersionOutput { + /** + *The date the version was created.
+ */ + creationDate: Date | undefined; + + /** + *The Amazon Resource Name (ARN) (ARN) that identifies the state machine version.
+ */ + stateMachineVersionArn: string | undefined; +} + /** * @public */ @@ -2796,11 +3205,41 @@ export class InvalidExecutionInput extends __BaseException { export interface StartExecutionInput { /** *The Amazon Resource Name (ARN) of the state machine to execute.
+ *The stateMachineArn
parameter accepts one of the following inputs:
+ * An unqualified state machine ARN – Refers to a state machine ARN that isn't qualified with a version or alias ARN. The following is an example of an unqualified state machine ARN.
+ *
+ * arn:
+ *
Step Functions doesn't associate state machine executions that you start with an unqualified ARN with a version. This is true even if that version uses the same revision that the execution used.
+ *+ * A state machine version ARN – Refers to a version ARN, which is a combination of state machine ARN and the version number separated by a colon (:). The following is an example of the ARN for version 10.
+ *
+ * arn:
+ *
Step Functions doesn't associate executions that you start with a version ARN with any aliases that point to that version.
+ *
+ * A state machine alias ARN – Refers to an alias ARN, which is a combination of state machine ARN and the alias name separated by a colon (:). The following is an example of the ARN for an alias named PROD
.
+ * arn:
+ *
Step Functions associates executions + * that you start with an alias ARN with that alias and the state machine version used for + * that execution.
+ *The name of the execution. This name must be unique for your Amazon Web Services account, region, and state machine for 90 days. For more information, + *
Optional name of the execution. + * This name must be unique for your Amazon Web Services account, Region, and state machine for 90 days. For more information, * see * Limits Related to State Machine Executions in the Step Functions Developer Guide.
*A name must not contain:
@@ -3152,7 +3591,7 @@ export interface UpdateStateMachineInput { roleArn?: string; /** - *The LoggingConfiguration
data type is used to set CloudWatch Logs
+ *
Use the LoggingConfiguration
data type to set CloudWatch Logs
* options.
Selects whether X-Ray tracing is enabled.
*/ tracingConfiguration?: TracingConfiguration; + + /** + *Specifies whether the state machine version is published. The default is
+ * false
. To publish a version after updating the state machine, set
+ * publish
to true
.
An optional description of the state machine version to publish.
+ *You can only specify the versionDescription
parameter if you've set publish
to true
.
The date and time the state machine was updated.
*/ updateDate: Date | undefined; + + /** + *The revision identifier for the updated state machine.
+ */ + revisionId?: string; + + /** + *The Amazon Resource Name (ARN) of the published state machine version.
+ *If the publish
parameter isn't set to true
, this field returns null.
The Amazon Resource Name (ARN) of the state machine alias.
+ */ + stateMachineAliasArn: string | undefined; + + /** + *A description of the state machine alias.
+ */ + description?: string; + + /** + *The routing configuration of the state machine alias.
+ *An array of RoutingConfig
objects that specifies up to two state machine versions that the alias starts executions for.
The date and time the state machine alias was updated.
+ */ + updateDate: Date | undefined; } /** @@ -3222,6 +3716,15 @@ export const ActivityTimedOutEventDetailsFilterSensitiveLog = (obj: ActivityTime export const CreateStateMachineInputFilterSensitiveLog = (obj: CreateStateMachineInput): any => ({ ...obj, ...(obj.definition && { definition: SENSITIVE_STRING }), + ...(obj.versionDescription && { versionDescription: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const CreateStateMachineAliasInputFilterSensitiveLog = (obj: CreateStateMachineAliasInput): any => ({ + ...obj, + ...(obj.description && { description: SENSITIVE_STRING }), }); /** @@ -3241,6 +3744,15 @@ export const DescribeExecutionOutputFilterSensitiveLog = (obj: DescribeExecution export const DescribeStateMachineOutputFilterSensitiveLog = (obj: DescribeStateMachineOutput): any => ({ ...obj, ...(obj.definition && { definition: SENSITIVE_STRING }), + ...(obj.description && { description: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const DescribeStateMachineAliasOutputFilterSensitiveLog = (obj: DescribeStateMachineAliasOutput): any => ({ + ...obj, + ...(obj.description && { description: SENSITIVE_STRING }), }); /** @@ -3558,6 +4070,14 @@ export const GetExecutionHistoryOutputFilterSensitiveLog = (obj: GetExecutionHis ...(obj.events && { events: obj.events.map((item) => HistoryEventFilterSensitiveLog(item)) }), }); +/** + * @internal + */ +export const PublishStateMachineVersionInputFilterSensitiveLog = (obj: PublishStateMachineVersionInput): any => ({ + ...obj, + ...(obj.description && { description: SENSITIVE_STRING }), +}); + /** * @internal */ @@ -3617,4 +4137,13 @@ export const StopExecutionInputFilterSensitiveLog = (obj: StopExecutionInput): a export const UpdateStateMachineInputFilterSensitiveLog = (obj: UpdateStateMachineInput): any => ({ ...obj, ...(obj.definition && { definition: SENSITIVE_STRING }), + ...(obj.versionDescription && { versionDescription: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const UpdateStateMachineAliasInputFilterSensitiveLog = (obj: UpdateStateMachineAliasInput): any => ({ + ...obj, + ...(obj.description && { description: SENSITIVE_STRING }), }); diff --git a/clients/client-sfn/src/protocols/Aws_json1_0.ts b/clients/client-sfn/src/protocols/Aws_json1_0.ts index 6d00e7bdf7f1..2448b4521f5e 100644 --- a/clients/client-sfn/src/protocols/Aws_json1_0.ts +++ b/clients/client-sfn/src/protocols/Aws_json1_0.ts @@ -23,12 +23,28 @@ import { import { Endpoint as __Endpoint, SerdeContext as __SerdeContext } from "@smithy/types"; import { CreateActivityCommandInput, CreateActivityCommandOutput } from "../commands/CreateActivityCommand"; +import { + CreateStateMachineAliasCommandInput, + CreateStateMachineAliasCommandOutput, +} from "../commands/CreateStateMachineAliasCommand"; import { CreateStateMachineCommandInput, CreateStateMachineCommandOutput } from "../commands/CreateStateMachineCommand"; import { DeleteActivityCommandInput, DeleteActivityCommandOutput } from "../commands/DeleteActivityCommand"; +import { + DeleteStateMachineAliasCommandInput, + DeleteStateMachineAliasCommandOutput, +} from "../commands/DeleteStateMachineAliasCommand"; import { DeleteStateMachineCommandInput, DeleteStateMachineCommandOutput } from "../commands/DeleteStateMachineCommand"; +import { + DeleteStateMachineVersionCommandInput, + DeleteStateMachineVersionCommandOutput, +} from "../commands/DeleteStateMachineVersionCommand"; import { DescribeActivityCommandInput, DescribeActivityCommandOutput } from "../commands/DescribeActivityCommand"; import { DescribeExecutionCommandInput, DescribeExecutionCommandOutput } from "../commands/DescribeExecutionCommand"; import { DescribeMapRunCommandInput, DescribeMapRunCommandOutput } from "../commands/DescribeMapRunCommand"; +import { + DescribeStateMachineAliasCommandInput, + DescribeStateMachineAliasCommandOutput, +} from "../commands/DescribeStateMachineAliasCommand"; import { DescribeStateMachineCommandInput, DescribeStateMachineCommandOutput, @@ -45,11 +61,23 @@ import { import { ListActivitiesCommandInput, ListActivitiesCommandOutput } from "../commands/ListActivitiesCommand"; import { ListExecutionsCommandInput, ListExecutionsCommandOutput } from "../commands/ListExecutionsCommand"; import { ListMapRunsCommandInput, ListMapRunsCommandOutput } from "../commands/ListMapRunsCommand"; +import { + ListStateMachineAliasesCommandInput, + ListStateMachineAliasesCommandOutput, +} from "../commands/ListStateMachineAliasesCommand"; import { ListStateMachinesCommandInput, ListStateMachinesCommandOutput } from "../commands/ListStateMachinesCommand"; +import { + ListStateMachineVersionsCommandInput, + ListStateMachineVersionsCommandOutput, +} from "../commands/ListStateMachineVersionsCommand"; import { ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput, } from "../commands/ListTagsForResourceCommand"; +import { + PublishStateMachineVersionCommandInput, + PublishStateMachineVersionCommandOutput, +} from "../commands/PublishStateMachineVersionCommand"; import { SendTaskFailureCommandInput, SendTaskFailureCommandOutput } from "../commands/SendTaskFailureCommand"; import { SendTaskHeartbeatCommandInput, SendTaskHeartbeatCommandOutput } from "../commands/SendTaskHeartbeatCommand"; import { SendTaskSuccessCommandInput, SendTaskSuccessCommandOutput } from "../commands/SendTaskSuccessCommand"; @@ -59,6 +87,10 @@ import { StopExecutionCommandInput, StopExecutionCommandOutput } from "../comman import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; import { UpdateMapRunCommandInput, UpdateMapRunCommandOutput } from "../commands/UpdateMapRunCommand"; +import { + UpdateStateMachineAliasCommandInput, + UpdateStateMachineAliasCommandOutput, +} from "../commands/UpdateStateMachineAliasCommand"; import { UpdateStateMachineCommandInput, UpdateStateMachineCommandOutput } from "../commands/UpdateStateMachineCommand"; import { ActivityDoesNotExist, @@ -66,18 +98,25 @@ import { ActivityListItem, ActivityWorkerLimitExceeded, CloudWatchLogsLogGroup, + ConflictException, CreateActivityInput, CreateActivityOutput, + CreateStateMachineAliasInput, + CreateStateMachineAliasOutput, CreateStateMachineInput, CreateStateMachineOutput, DeleteActivityInput, + DeleteStateMachineAliasInput, DeleteStateMachineInput, + DeleteStateMachineVersionInput, DescribeActivityInput, DescribeActivityOutput, DescribeExecutionInput, DescribeExecutionOutput, DescribeMapRunInput, DescribeMapRunOutput, + DescribeStateMachineAliasInput, + DescribeStateMachineAliasOutput, DescribeStateMachineForExecutionInput, DescribeStateMachineForExecutionOutput, DescribeStateMachineInput, @@ -104,27 +143,37 @@ import { ListExecutionsOutput, ListMapRunsInput, ListMapRunsOutput, + ListStateMachineAliasesInput, + ListStateMachineAliasesOutput, ListStateMachinesInput, ListStateMachinesOutput, + ListStateMachineVersionsInput, + ListStateMachineVersionsOutput, ListTagsForResourceInput, LogDestination, LoggingConfiguration, MapRunListItem, MissingRequiredParameter, + PublishStateMachineVersionInput, + PublishStateMachineVersionOutput, ResourceNotFound, + RoutingConfigurationListItem, SendTaskFailureInput, SendTaskHeartbeatInput, SendTaskSuccessInput, + ServiceQuotaExceededException, StartExecutionInput, StartExecutionOutput, StartSyncExecutionInput, StartSyncExecutionOutput, + StateMachineAliasListItem, StateMachineAlreadyExists, StateMachineDeleting, StateMachineDoesNotExist, StateMachineLimitExceeded, StateMachineListItem, StateMachineTypeNotSupported, + StateMachineVersionListItem, StopExecutionInput, StopExecutionOutput, Tag, @@ -135,6 +184,8 @@ import { TracingConfiguration, UntagResourceInput, UpdateMapRunInput, + UpdateStateMachineAliasInput, + UpdateStateMachineAliasOutput, UpdateStateMachineInput, UpdateStateMachineOutput, ValidationException, @@ -167,6 +218,19 @@ export const se_CreateStateMachineCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_0CreateStateMachineAliasCommand + */ +export const se_CreateStateMachineAliasCommand = async ( + input: CreateStateMachineAliasCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("CreateStateMachineAlias"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_0DeleteActivityCommand */ @@ -193,6 +257,32 @@ export const se_DeleteStateMachineCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_0DeleteStateMachineAliasCommand + */ +export const se_DeleteStateMachineAliasCommand = async ( + input: DeleteStateMachineAliasCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("DeleteStateMachineAlias"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +/** + * serializeAws_json1_0DeleteStateMachineVersionCommand + */ +export const se_DeleteStateMachineVersionCommand = async ( + input: DeleteStateMachineVersionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("DeleteStateMachineVersion"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_0DescribeActivityCommand */ @@ -245,6 +335,19 @@ export const se_DescribeStateMachineCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_0DescribeStateMachineAliasCommand + */ +export const se_DescribeStateMachineAliasCommand = async ( + input: DescribeStateMachineAliasCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("DescribeStateMachineAlias"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_0DescribeStateMachineForExecutionCommand */ @@ -323,6 +426,19 @@ export const se_ListMapRunsCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_0ListStateMachineAliasesCommand + */ +export const se_ListStateMachineAliasesCommand = async ( + input: ListStateMachineAliasesCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("ListStateMachineAliases"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_0ListStateMachinesCommand */ @@ -336,6 +452,19 @@ export const se_ListStateMachinesCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_0ListStateMachineVersionsCommand + */ +export const se_ListStateMachineVersionsCommand = async ( + input: ListStateMachineVersionsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("ListStateMachineVersions"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_0ListTagsForResourceCommand */ @@ -349,6 +478,19 @@ export const se_ListTagsForResourceCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_0PublishStateMachineVersionCommand + */ +export const se_PublishStateMachineVersionCommand = async ( + input: PublishStateMachineVersionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("PublishStateMachineVersion"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_0SendTaskFailureCommand */ @@ -486,6 +628,19 @@ export const se_UpdateStateMachineCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_0UpdateStateMachineAliasCommand + */ +export const se_UpdateStateMachineAliasCommand = async ( + input: UpdateStateMachineAliasCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("UpdateStateMachineAlias"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * deserializeAws_json1_0CreateActivityCommand */ @@ -571,6 +726,9 @@ const de_CreateStateMachineCommandError = async ( }; const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { + case "ConflictException": + case "com.amazonaws.sfn#ConflictException": + throw await de_ConflictExceptionRes(parsedOutput, context); case "InvalidArn": case "com.amazonaws.sfn#InvalidArn": throw await de_InvalidArnRes(parsedOutput, context); @@ -601,6 +759,73 @@ const de_CreateStateMachineCommandError = async ( case "TooManyTags": case "com.amazonaws.sfn#TooManyTags": throw await de_TooManyTagsRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.sfn#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_json1_0CreateStateMachineAliasCommand + */ +export const de_CreateStateMachineAliasCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): PromiseThe name of the activity.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", + "smithy.api#documentation": "The name of the activity.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", "smithy.api#required": {} } }, @@ -2470,6 +1408,16 @@ "smithy.api#error": "client" } }, + "com.amazonaws.sfn#AliasDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + }, + "smithy.api#sensitive": {} + } + }, "com.amazonaws.sfn#Arn": { "type": "string", "traits": { @@ -2519,6 +1467,16 @@ "smithy.api#documentation": "An object that describes workflow billing details.
" } }, + "com.amazonaws.sfn#CharacterRestrictedName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 80 + }, + "smithy.api#pattern": "^(?=.*[a-zA-Z_\\-\\.])[a-zA-Z0-9_\\-\\.]+$" + } + }, "com.amazonaws.sfn#CloudWatchEventsExecutionDataDetails": { "type": "structure", "members": { @@ -2548,6 +1506,19 @@ "smithy.api#documentation": "" } }, + "com.amazonaws.sfn#ConflictException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.sfn#ErrorMessage" + } + }, + "traits": { + "smithy.api#documentation": "Updating or deleting a resource can cause an inconsistent state. This error occurs when there're concurrent requests for DeleteStateMachineVersion, PublishStateMachineVersion, or UpdateStateMachine with the publish
parameter set to true
.
HTTP Status Code: 409
", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, "com.amazonaws.sfn#ConnectorParameters": { "type": "string", "traits": { @@ -2578,7 +1549,7 @@ } ], "traits": { - "smithy.api#documentation": "Creates an activity. An activity is a task that you write in any programming language and\n host on any machine that has access to Step Functions. Activities must poll Step Functions using the\n GetActivityTask
API action and respond using SendTask*
API\n actions. This function lets Step Functions know the existence of your activity and returns an\n identifier for use in a state machine and when polling from the activity.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\n\n CreateActivity
is an idempotent API. Subsequent requests won’t create a\n duplicate resource if it was already created. CreateActivity
's idempotency\n check is based on the activity name
. If a following request has different\n tags
values, Step Functions will ignore these differences and treat it as an\n idempotent request of the previous. In this case, tags
will not be updated,\n even if they are different.
Creates an activity. An activity is a task that you write in any programming language and\n host on any machine that has access to Step Functions. Activities must poll Step Functions using the\n GetActivityTask
API action and respond using SendTask*
API\n actions. This function lets Step Functions know the existence of your activity and returns an\n identifier for use in a state machine and when polling from the activity.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\n\n CreateActivity
is an idempotent API. Subsequent requests won’t create a\n duplicate resource if it was already created. CreateActivity
's idempotency\n check is based on the activity name
. If a following request has different\n tags
values, Step Functions will ignore these differences and treat it as an\n idempotent request of the previous. In this case, tags
will not be updated,\n even if they are different.
The name of the activity to create. This name must be unique for your Amazon Web Services account and region for 90 days. For more information,\n see \n Limits Related to State Machine Executions in the Step Functions Developer Guide.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", + "smithy.api#documentation": "The name of the activity to create. This name must be unique for your Amazon Web Services account and region for 90 days. For more information,\n see \n Limits Related to State Machine Executions in the Step Functions Developer Guide.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", "smithy.api#required": {} } }, "tags": { "target": "com.amazonaws.sfn#TagList", "traits": { - "smithy.api#documentation": "The list of tags to add to a resource.
\nAn array of key-value pairs. For more information, see Using\n Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User\n Guide, and Controlling Access Using IAM\n Tags.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
The list of tags to add to a resource.
\nAn array of key-value pairs. For more information, see Using\n Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User\n Guide, and Controlling Access Using IAM\n Tags.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
Creates a state machine. A state machine consists of a collection of states that can do\n work (Task
states), determine to which states to transition next\n (Choice
states), stop an execution with an error (Fail
states),\n and so on. State machines are specified using a JSON-based, structured language. For more\n information, see Amazon States\n Language in the Step Functions User Guide.
If you set the publish
parameter of this API action to true
, it\n publishes version 1
as the first revision of the state machine.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\n\n CreateStateMachine
is an idempotent API. Subsequent requests won’t create a\n duplicate resource if it was already created. CreateStateMachine
's idempotency\n check is based on the state machine name
, definition
,\n type
, LoggingConfiguration
, and\n TracingConfiguration
. The check is also based on the publish
and versionDescription
parameters. If a following request has a different\n roleArn
or tags
, Step Functions will ignore these differences and treat\n it as an idempotent request of the previous. In this case, roleArn
and\n tags
will not be updated, even if they are different.
Creates an alias for a state machine that points to one or two versions of the same state machine. You can set your application to call StartExecution with an alias and update the version the alias uses without changing the client's code.
\nYou can also map an alias to split StartExecution requests between two\n versions of a state machine. To do this, add a second RoutingConfig
object in the\n routingConfiguration
parameter. You must also specify the percentage of\n execution run requests each version should receive in both RoutingConfig
objects.\n Step Functions randomly chooses which version runs a given execution based on the\n percentage you specify.
To create an alias that points to a single version, specify a single\n RoutingConfig
object with a weight
set to 100.
You can create up to 100 aliases for each state machine. You must delete unused aliases using the DeleteStateMachineAlias API action.
\n\n CreateStateMachineAlias
is an idempotent API. Step Functions bases the\n idempotency check on the stateMachineArn
, description
,\n name
, and routingConfiguration
parameters. Requests that contain\n the same values for these parameters return a successful idempotent response without creating\n a duplicate resource.
\n Related operations:\n
\nA description for the state machine alias.
" + } + }, + "name": { + "target": "com.amazonaws.sfn#CharacterRestrictedName", + "traits": { + "smithy.api#documentation": "The name of the state machine alias.
\nTo avoid conflict with version ARNs, don't use an integer in the name of the alias.
", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.sfn#StateMachineTypeNotSupported" + "routingConfiguration": { + "target": "com.amazonaws.sfn#RoutingConfigurationList", + "traits": { + "smithy.api#documentation": "The routing configuration of a state machine alias. The routing configuration shifts\n execution traffic between two state machine versions. routingConfiguration
\n contains an array of RoutingConfig
objects that specify up to two state machine\n versions. Step Functions then randomly choses which version to run an execution with based\n on the weight assigned to each RoutingConfig
.
The Amazon Resource Name (ARN) that identifies the created state machine alias.
", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.sfn#TooManyTags" + "creationDate": { + "target": "com.amazonaws.sfn#Timestamp", + "traits": { + "smithy.api#documentation": "The date the state machine alias was created.
", + "smithy.api#required": {} + } } - ], + }, "traits": { - "smithy.api#documentation": "Creates a state machine. A state machine consists of a collection of states that can do\n work (Task
states), determine to which states to transition next\n (Choice
states), stop an execution with an error (Fail
states),\n and so on. State machines are specified using a JSON-based, structured language. For more\n information, see Amazon States\n Language in the Step Functions User Guide.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\n\n CreateStateMachine
is an idempotent API. Subsequent requests won’t create a\n duplicate resource if it was already created. CreateStateMachine
's idempotency\n check is based on the state machine name
, definition
,\n type
, LoggingConfiguration
and\n TracingConfiguration
. If a following request has a different\n roleArn
or tags
, Step Functions will ignore these differences and treat\n it as an idempotent request of the previous. In this case, roleArn
and\n tags
will not be updated, even if they are different.
The name of the state machine.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", + "smithy.api#documentation": "The name of the state machine.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", "smithy.api#required": {} } }, @@ -2703,7 +1771,7 @@ "tags": { "target": "com.amazonaws.sfn#TagList", "traits": { - "smithy.api#documentation": "Tags to be added when creating a state machine.
\nAn array of key-value pairs. For more information, see Using\n Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User\n Guide, and Controlling Access Using IAM\n Tags.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
Tags to be added when creating a state machine.
\nAn array of key-value pairs. For more information, see Using\n Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User\n Guide, and Controlling Access Using IAM\n Tags.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
Selects whether X-Ray tracing is enabled.
" } + }, + "publish": { + "target": "com.amazonaws.sfn#Publish", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "Set to true
to publish the first version of the state machine during creation. The default is false
.
Sets description about the state machine version. You can only set the description if the publish
parameter is set to true
. Otherwise, if you set versionDescription
, but publish
to false
, this API action throws ValidationException
.
The date the state machine is created.
", "smithy.api#required": {} } + }, + "stateMachineVersionArn": { + "target": "com.amazonaws.sfn#Arn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that identifies the created state machine version. If you do not set the publish
parameter to true
, this field returns null value.
Deletes a state machine. This is an asynchronous operation: It sets the state machine's\n status to DELETING
and begins the deletion process.
If the given state machine Amazon Resource Name (ARN) is a qualified state machine ARN, it will fail with ValidationException.
\n \nA qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel
refers to a Distributed Map state with a label mapStateLabel
in the state machine named stateMachineName
.
For EXPRESS
state machines, the deletion will happen eventually (usually\n less than a minute). Running executions may emit logs after DeleteStateMachine
\n API is called.
Deletes a state machine. This is an asynchronous operation: It sets the state machine's\n status to DELETING
and begins the deletion process.
A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.
\nThe following are some examples of qualified and unqualified state machine ARNs:
\nThe following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel
in a state machine named myStateMachine
.
\n arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel
\n
If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException
.
The following unqualified state machine ARN refers to a state machine named myStateMachine
.
\n arn:partition:states:region:account-id:stateMachine:myStateMachine
\n
This API action also deletes all versions and aliases associated with a state machine.
\nFor EXPRESS
state machines, the deletion happens eventually (usually in\n less than a minute). Running executions may emit logs after DeleteStateMachine
\n API is called.
Deletes a state machine alias.
\nAfter you delete a state machine alias, you can't use it to start executions. When you\n delete a state machine alias, Step Functions doesn't delete the state machine versions\n that alias references.
\n\n Related operations:\n
\nThe Amazon Resource Name (ARN) of the state machine alias to delete.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.sfn#DeleteStateMachineAliasOutput": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.sfn#DeleteStateMachineInput": { @@ -2806,11 +1953,62 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.sfn#DeleteStateMachineOutput": { "type": "structure", - "members": {} + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.sfn#DeleteStateMachineVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.sfn#DeleteStateMachineVersionInput" + }, + "output": { + "target": "com.amazonaws.sfn#DeleteStateMachineVersionOutput" + }, + "errors": [ + { + "target": "com.amazonaws.sfn#ConflictException" + }, + { + "target": "com.amazonaws.sfn#InvalidArn" + }, + { + "target": "com.amazonaws.sfn#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "Deletes a state machine version. After\n you delete a version, you can't call StartExecution using that version's ARN\n or use\n the\n version with a state machine alias.
\nDeleting a state machine version won't terminate its in-progress executions.
\nYou can't delete a state machine version currently referenced by one or more aliases. Before you delete a version, you must either delete the aliases or update them to point to another state machine version.
\n\n Related operations:\n
\nThe Amazon Resource Name (ARN) of the state machine version to delete.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.sfn#DeleteStateMachineVersionOutput": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } }, "com.amazonaws.sfn#DescribeActivity": { "type": "operation", @@ -2829,7 +2027,7 @@ } ], "traits": { - "smithy.api#documentation": "Describes an activity.
\nThis operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nDescribes an activity.
\nThis operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nThe name of the activity.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", + "smithy.api#documentation": "The name of the activity.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", "smithy.api#required": {} } }, @@ -2868,6 +2069,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.sfn#DescribeExecution": { @@ -2887,7 +2091,7 @@ } ], "traits": { - "smithy.api#documentation": "Provides all information about a state machine execution, such as the state machine associated with the execution, the execution input and output, and relevant execution metadata. Use this API action to return the Map Run ARN if the execution was dispatched by a Map Run.
\nThis operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nThis API action is not supported by EXPRESS
state machine executions unless they were dispatched by a Map Run.
Provides information about a state machine execution, such as the state machine\n associated with the execution, the execution input and output, and relevant execution\n metadata. Use this API action to return the Map Run Amazon Resource Name (ARN) if the execution was\n dispatched by a Map Run.
\nIf you specify a version or alias ARN when you call the StartExecution\n API action, DescribeExecution
returns that ARN.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nExecutions of an EXPRESS
state machinearen't supported by DescribeExecution
unless a Map Run dispatched them.
The name of the execution.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
" + "smithy.api#documentation": "The name of the execution.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
" } }, "status": { @@ -2942,7 +2149,7 @@ "stopDate": { "target": "com.amazonaws.sfn#Timestamp", "traits": { - "smithy.api#documentation": "If the execution has already ended, the date the execution stopped.
" + "smithy.api#documentation": "If the execution ended, the date the execution stopped.
" } }, "input": { @@ -2986,7 +2193,22 @@ "traits": { "smithy.api#documentation": "The cause string if the state machine execution failed.
" } + }, + "stateMachineVersionArn": { + "target": "com.amazonaws.sfn#Arn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) of the state machine version associated with the execution. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, stateMachineARN:1
.
If you start an execution from a StartExecution
request without specifying a\n state machine version or alias ARN, Step Functions returns a null value.
The Amazon Resource Name (ARN) of the state machine alias associated with the execution. The alias ARN is a combination of state machine ARN and the alias name separated by a colon (:). For example, stateMachineARN:PROD
.
If you start an execution from a StartExecution
request with a\n state machine version ARN, this field will be null.
Provides information about a state machine's definition, its IAM role Amazon Resource Name (ARN), and configuration. If the state machine ARN is a qualified state machine ARN, the response returned includes the Map
state's label.
A qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel
refers to a Distributed Map state with a label mapStateLabel
in the state machine named stateMachineName
.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nProvides information about a state machine's definition, its IAM role Amazon Resource Name (ARN), and configuration.
\nA qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.
\nThe following are some examples of qualified and unqualified state machine ARNs:
\nThe following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel
in a state machine named myStateMachine
.
\n arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel
\n
If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException
.
The following qualified state machine ARN refers to an alias named PROD
.
\n arn:
\n
If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.
\nThe following unqualified state machine ARN refers to a state machine named myStateMachine
.
\n arn:
\n
This API action returns the details for a state machine version if the\n stateMachineArn
you specify is a state machine version ARN.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nReturns details about a state machine alias.
\n\n Related operations:\n
\nThe Amazon Resource Name (ARN) of the state machine alias.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.sfn#DescribeStateMachineAliasOutput": { + "type": "structure", + "members": { + "stateMachineAliasArn": { + "target": "com.amazonaws.sfn#Arn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) of the state machine alias.
" + } + }, + "name": { + "target": "com.amazonaws.sfn#Name", + "traits": { + "smithy.api#documentation": "The name of the state machine alias.
" + } + }, + "description": { + "target": "com.amazonaws.sfn#AliasDescription", + "traits": { + "smithy.api#documentation": "A description of the alias.
" + } + }, + "routingConfiguration": { + "target": "com.amazonaws.sfn#RoutingConfigurationList", + "traits": { + "smithy.api#documentation": "The routing configuration of the alias.
" + } + }, + "creationDate": { + "target": "com.amazonaws.sfn#Timestamp", + "traits": { + "smithy.api#documentation": "The date the state machine alias was created.
" + } + }, + "updateDate": { + "target": "com.amazonaws.sfn#Timestamp", + "traits": { + "smithy.api#documentation": "The date the state machine alias was last updated.
\nFor a newly created state machine, this is the same as the creation date.
" + } + } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.sfn#DescribeStateMachineForExecution": { @@ -3135,7 +2445,7 @@ } ], "traits": { - "smithy.api#documentation": "Provides information about a state machine's definition, its execution role ARN, and configuration. If an execution was dispatched by a Map Run, the Map Run is returned in the response. Additionally, the state machine returned will be the state machine associated with the Map Run.
\nThis operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nThis API action is not supported by EXPRESS
state machines.
Provides information about a state machine's definition, its execution role ARN, and\n configuration. If a Map Run dispatched the execution, this action returns the Map Run\n Amazon Resource Name (ARN) in the response.\n The\n state machine returned is the state machine associated with the\n Map Run.
\nThis operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nThis API action is not supported by EXPRESS
state machines.
A user-defined or an auto-generated string that identifies a Map
state. This field is returned only if the executionArn
is a child workflow execution that was started by a Distributed Map state.
The revision identifier for the state machine. The first revision ID when you create the state machine is null.
\nUse the state machine revisionId
parameter to compare the revision of a state machine with the configuration of the state machine used for executions without performing a diff of the properties, such as definition
and roleArn
.
The Amazon Resource Name (ARN) of the state machine to describe.
", + "smithy.api#documentation": "The Amazon Resource Name (ARN) of the state machine for which you want the information.
\nIf you specify a state machine version ARN, this API returns details about that version. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, stateMachineARN:1
.
The Amazon Resource Name (ARN) that identifies the state machine.
", + "smithy.api#documentation": "The Amazon Resource Name (ARN) that identifies the state machine.
\nIf you specified a state machine version ARN in your request, the API returns the version ARN. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, stateMachineARN:1
.
The name of the state machine.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", + "smithy.api#documentation": "The name of the state machine.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", "smithy.api#required": {} } }, @@ -3270,7 +2595,7 @@ "creationDate": { "target": "com.amazonaws.sfn#Timestamp", "traits": { - "smithy.api#documentation": "The date the state machine is created.
", + "smithy.api#documentation": "The date the state machine is created.
\nFor a state machine version, creationDate
is the date the version was created.
A user-defined or an auto-generated string that identifies a Map
state. This parameter is present only if the stateMachineArn
specified in input is a qualified state machine ARN.
The revision identifier for the state machine.
\nUse the revisionId
parameter to compare between versions of a state machine\n configuration used for executions without performing a diff of the properties, such as\n definition
and roleArn
.
The description of the state machine version.
" + } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.sfn#Enabled": { @@ -3401,14 +2741,14 @@ "stateMachineArn": { "target": "com.amazonaws.sfn#Arn", "traits": { - "smithy.api#documentation": "The Amazon Resource Name (ARN) of the executed state machine.
", + "smithy.api#documentation": "The Amazon Resource Name (ARN) of the state machine that ran the execution.
", "smithy.api#required": {} } }, "name": { "target": "com.amazonaws.sfn#Name", "traits": { - "smithy.api#documentation": "The name of the execution.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", + "smithy.api#documentation": "The name of the execution.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", "smithy.api#required": {} } }, @@ -3444,6 +2784,18 @@ "smithy.api#default": null, "smithy.api#documentation": "The total number of items processed in a child workflow execution. This field is returned only if mapRunArn
was specified in the ListExecutions
API action. If stateMachineArn
was specified in ListExecutions
, the itemCount
field isn't returned.
The Amazon Resource Name (ARN) of the state machine version associated with the execution.
\nIf the state machine execution was started with an unqualified ARN, it returns null.
\nIf the execution was started using a stateMachineAliasArn
, both the stateMachineAliasArn
and stateMachineVersionArn
parameters contain the respective values.
The Amazon Resource Name (ARN) of the state machine alias used to start an execution.
\nIf the state machine execution was started with an unqualified ARN or a version ARN, it returns null.
" + } } }, "traits": { @@ -3470,6 +2822,18 @@ "traits": { "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM role used for executing Lambda tasks.
" } + }, + "stateMachineAliasArn": { + "target": "com.amazonaws.sfn#Arn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that identifies a state machine alias used for starting the state machine execution.
" + } + }, + "stateMachineVersionArn": { + "target": "com.amazonaws.sfn#Arn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that identifies a state machine version used for starting the state machine execution.
" + } } }, "traits": { @@ -3571,7 +2935,7 @@ } ], "traits": { - "smithy.api#documentation": "Used by workers to retrieve a task (with the specified activity ARN) which has been\n scheduled for execution by a running state machine. This initiates a long poll, where the\n service holds the HTTP connection open and responds as soon as a task becomes available (i.e.\n an execution of a task of this type is needed.) The maximum time the service holds on to the\n request before responding is 60 seconds. If no task is available within 60 seconds, the poll\n returns a taskToken
with a null string.
This API action isn't logged in CloudTrail.
\nWorkers should set their client side socket timeout to at least 65 seconds (5 seconds\n higher than the maximum time the service may hold the poll request).
\nPolling with GetActivityTask
can cause latency in some implementations. See\n Avoid\n Latency When Polling for Activity Tasks in the Step Functions Developer Guide.
Used by workers to retrieve a task (with the specified activity ARN) which has been\n scheduled for execution by a running state machine. This initiates a long poll, where the\n service holds the HTTP connection open and responds as soon as a task becomes available (i.e.\n an execution of a task of this type is needed.) The maximum time the service holds on to the\n request before responding is 60 seconds. If no task is available within 60 seconds, the poll\n returns a taskToken
with a null string.
This API action isn't logged in CloudTrail.
\nWorkers should set their client side socket timeout to at least 65 seconds (5 seconds\n higher than the maximum time the service may hold the poll request).
\nPolling with GetActivityTask
can cause latency in some implementations. See\n Avoid\n Latency When Polling for Activity Tasks in the Step Functions Developer Guide.
You can provide an arbitrary name in order to identify the worker that the task is\n assigned to. This name is used when it is logged in the execution history.
" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.sfn#GetActivityTaskOutput": { @@ -3607,6 +2974,9 @@ "smithy.api#documentation": "The string that contains the JSON input data for the task. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.
" } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.sfn#GetExecutionHistory": { @@ -3629,7 +2999,7 @@ } ], "traits": { - "smithy.api#documentation": "Returns the history of the specified execution as a list of events. By default, the\n results are returned in ascending order of the timeStamp
of the events. Use the\n reverseOrder
parameter to get the latest events first.
If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
This API action is not supported by EXPRESS
state machines.
Returns the history of the specified execution as a list of events. By default, the\n results are returned in ascending order of the timeStamp
of the events. Use the\n reverseOrder
parameter to get the latest events first.
If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
This API action is not supported by EXPRESS
state machines.
The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" + "smithy.api#documentation": "The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" } }, "reverseOrder": { @@ -3674,6 +3044,9 @@ "smithy.api#documentation": "You can select whether execution data (input or output of a history event) is returned.\n The default is true
.
If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
Lists the existing activities.
\nIf nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nLists the existing activities.
\nIf nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nThe maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" + "smithy.api#documentation": "The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" } }, "nextToken": { @@ -4563,6 +3939,9 @@ "smithy.api#documentation": "If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
Lists all executions of a state machine or a Map Run. You can list all executions related to a state machine by specifying a state machine Amazon Resource Name (ARN), or those related to a Map Run by specifying a Map Run ARN.
\nResults are\n sorted by time, with the most recent execution first.
\nIf nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nThis API action is not supported by EXPRESS
state machines.
Lists all executions of a state machine or a Map Run. You can list all executions related to a state machine by specifying a state machine Amazon Resource Name (ARN), or those related to a Map Run by specifying a Map Run ARN.
\nYou can also provide a state machine alias ARN or version ARN to list the executions associated with a specific alias or version.
\nResults are\n sorted by time, with the most recent execution first.
\nIf nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nThis API action is not supported by EXPRESS
state machines.
The Amazon Resource Name (ARN) of the state machine whose executions is listed.
\nYou can specify either a mapRunArn
or a stateMachineArn
, but not both.
The Amazon Resource Name (ARN) of the state machine whose executions is listed.
\nYou can specify either a mapRunArn
or a stateMachineArn
, but not both.
You can also return a list of executions associated with a specific alias or version, by specifying an alias ARN or a version ARN in the stateMachineArn
parameter.
The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" + "smithy.api#documentation": "The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" } }, "nextToken": { @@ -4655,6 +4037,9 @@ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the Map Run that started the child workflow executions. If the mapRunArn
field is specified, a list of all of the child workflow executions started by a Map Run is returned. For more information, see Examining Map Run in the Step Functions Developer Guide.
You can specify either a mapRunArn
or a stateMachineArn
, but not both.
If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" + "smithy.api#documentation": "The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" } }, "nextToken": { @@ -4736,6 +4124,9 @@ "smithy.api#documentation": "If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
Lists aliases for a specified state machine ARN. Results are sorted by time, with the most recently created aliases listed first.
\nTo list aliases that reference a state machine version, you can specify the version ARN in the stateMachineArn
parameter.
If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
\n Related operations:\n
\nThe Amazon Resource Name (ARN) of the state machine for which you want to list aliases.
\nIf you specify a state machine version ARN, this API returns a list of aliases for that version.
", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.sfn#PageToken", + "traits": { + "smithy.api#documentation": "If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.sfn#ListStateMachineAliasesOutput": { + "type": "structure", + "members": { + "stateMachineAliases": { + "target": "com.amazonaws.sfn#StateMachineAliasList", + "traits": { + "smithy.api#documentation": "Aliases for the state machine.
", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.sfn#PageToken", + "traits": { + "smithy.api#documentation": "If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
Lists versions for the specified state machine Amazon Resource Name (ARN).
\nThe results are sorted in descending order of the version creation time.
\nIf nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
\n Related operations:\n
\nThe Amazon Resource Name (ARN) of the state machine.
", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.sfn#PageToken", + "traits": { + "smithy.api#documentation": "If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.sfn#ListStateMachineVersionsOutput": { + "type": "structure", + "members": { + "stateMachineVersions": { + "target": "com.amazonaws.sfn#StateMachineVersionList", + "traits": { + "smithy.api#documentation": "Versions for the state machine.
", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.sfn#PageToken", + "traits": { + "smithy.api#documentation": "If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
Lists the existing state machines.
\nIf nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nLists the existing state machines.
\nIf nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
\nThe maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" + "smithy.api#documentation": "The maximum number of results that are returned per call. You can use nextToken
to obtain further pages of results.\n The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.
This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.
" } }, "nextToken": { @@ -4795,6 +4339,9 @@ "smithy.api#documentation": "If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
If nextToken
is returned, there are more results available. The value of nextToken
is a unique pagination token for each page.\n Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
List tags for a given resource.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
List tags for a given resource.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
An array of tags associated with the resource.
" } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.sfn#LogDestination": { @@ -5227,84 +4783,210 @@ "length": { "target": "com.amazonaws.sfn#UnsignedInteger", "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "The size of the array for Map state iterations.
" + "smithy.api#default": 0, + "smithy.api#documentation": "The size of the array for Map state iterations.
" + } + } + }, + "traits": { + "smithy.api#documentation": "Details about a Map state that was started.
" + } + }, + "com.amazonaws.sfn#MaxConcurrency": { + "type": "integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.sfn#MissingRequiredParameter": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.sfn#ErrorMessage" + } + }, + "traits": { + "smithy.api#documentation": "Request is missing a required parameter. This error occurs if both definition
\n and roleArn
are not specified.
Creates a version from the\n current revision of a state machine. Use versions to create immutable snapshots of your state\n machine. You can start executions from versions either directly or with an alias. To create an\n alias, use CreateStateMachineAlias.
\nYou can publish up to 1000 versions for each state machine. You must manually delete unused versions using the DeleteStateMachineVersion API action.
\n\n PublishStateMachineVersion
is an idempotent API. It doesn't create a\n duplicate state machine version if it already exists for the current revision. Step Functions bases PublishStateMachineVersion
's idempotency check on the\n stateMachineArn
, name
, and revisionId
parameters.\n Requests with the same parameters return a successful idempotent response. If you don't\n specify a revisionId
, Step Functions checks for a previously published\n version of the state machine's current revision.
\n Related operations:\n
\nThe Amazon Resource Name (ARN) of the state machine.
", + "smithy.api#required": {} + } + }, + "revisionId": { + "target": "com.amazonaws.sfn#RevisionId", + "traits": { + "smithy.api#documentation": "Only publish the state machine version if the current state machine's revision ID matches the specified ID.
\nUse this option to avoid publishing a version if the state machine changed since you last\n updated it. If the specified revision ID doesn't match the state machine's current revision\n ID, the API returns ConflictException
.
To specify an initial revision ID for a state machine with no revision ID assigned,\n specify the string INITIAL
for the revisionId
parameter. For\n example, you can specify a revisionID
of INITIAL
when you create a\n state machine using the CreateStateMachine API action.
An optional description of the state machine version.
" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.sfn#PublishStateMachineVersionOutput": { + "type": "structure", + "members": { + "creationDate": { + "target": "com.amazonaws.sfn#Timestamp", + "traits": { + "smithy.api#documentation": "The date the version was created.
", + "smithy.api#required": {} + } + }, + "stateMachineVersionArn": { + "target": "com.amazonaws.sfn#Arn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) (ARN) that identifies the state machine version.
", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "Details about a Map state that was started.
" - } - }, - "com.amazonaws.sfn#MaxConcurrency": { - "type": "integer", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 0 - } + "smithy.api#output": {} } }, - "com.amazonaws.sfn#MissingRequiredParameter": { + "com.amazonaws.sfn#ResourceNotFound": { "type": "structure", "members": { "message": { "target": "com.amazonaws.sfn#ErrorMessage" + }, + "resourceName": { + "target": "com.amazonaws.sfn#Arn" } }, "traits": { - "smithy.api#documentation": "Request is missing a required parameter. This error occurs if both definition
\n and roleArn
are not specified.
Could not find the referenced resource.
", + "smithy.api#error": "client", + "smithy.api#httpError": 404 } }, - "com.amazonaws.sfn#Name": { - "type": "string", + "com.amazonaws.sfn#ReverseOrder": { + "type": "boolean", "traits": { - "smithy.api#length": { - "min": 1, - "max": 80 - } + "smithy.api#default": false } }, - "com.amazonaws.sfn#PageSize": { - "type": "integer", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 0, - "max": 1000 - } - } + "com.amazonaws.sfn#RevisionId": { + "type": "string" }, - "com.amazonaws.sfn#PageToken": { - "type": "string", + "com.amazonaws.sfn#RoutingConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.sfn#RoutingConfigurationListItem" + }, "traits": { "smithy.api#length": { "min": 1, - "max": 1024 + "max": 2 } } }, - "com.amazonaws.sfn#ResourceNotFound": { + "com.amazonaws.sfn#RoutingConfigurationListItem": { "type": "structure", "members": { - "message": { - "target": "com.amazonaws.sfn#ErrorMessage" + "stateMachineVersionArn": { + "target": "com.amazonaws.sfn#Arn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that identifies one or two state machine versions defined in the routing configuration.
\nIf you specify the ARN of a second version, it must belong to the same state machine as the first version.
", + "smithy.api#required": {} + } }, - "resourceName": { - "target": "com.amazonaws.sfn#Arn" + "weight": { + "target": "com.amazonaws.sfn#VersionWeight", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "The percentage of traffic you want to route to the second state machine\n version. The sum of the weights in the routing\n configuration must be equal to 100.
", + "smithy.api#required": {} + } } }, "traits": { - "smithy.api#documentation": "Could not find the referenced resource. Only state machine and activity ARNs are\n supported.
", - "smithy.api#error": "client", - "smithy.api#httpError": 404 - } - }, - "com.amazonaws.sfn#ReverseOrder": { - "type": "boolean", - "traits": { - "smithy.api#default": false + "smithy.api#documentation": "Contains details about the routing configuration of a state machine alias. In a routing\n configuration, you define an array of objects that specify up to two state machine versions.\n You also specify the percentage of traffic to be routed to each version.
" } }, "com.amazonaws.sfn#SendTaskFailure": { @@ -5352,11 +5034,17 @@ "smithy.api#documentation": "A more detailed explanation of the cause of the failure.
" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.sfn#SendTaskFailureOutput": { "type": "structure", - "members": {} + "members": {}, + "traits": { + "smithy.api#output": {} + } }, "com.amazonaws.sfn#SendTaskHeartbeat": { "type": "operation", @@ -5391,11 +5079,17 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.sfn#SendTaskHeartbeatOutput": { "type": "structure", - "members": {} + "members": {}, + "traits": { + "smithy.api#output": {} + } }, "com.amazonaws.sfn#SendTaskSuccess": { "type": "operation", @@ -5440,11 +5134,17 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.sfn#SendTaskSuccessOutput": { "type": "structure", - "members": {} + "members": {}, + "traits": { + "smithy.api#output": {} + } }, "com.amazonaws.sfn#SensitiveCause": { "type": "string", @@ -5486,6 +5186,19 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.sfn#ServiceQuotaExceededException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.sfn#ErrorMessage" + } + }, + "traits": { + "smithy.api#documentation": "The request would cause a service quota to be exceeded.
\nHTTP Status Code: 402
", + "smithy.api#error": "client", + "smithy.api#httpError": 402 + } + }, "com.amazonaws.sfn#StartExecution": { "type": "operation", "input": { @@ -5521,7 +5234,7 @@ } ], "traits": { - "smithy.api#documentation": "Starts a state machine execution. If the given state machine Amazon Resource Name (ARN) is a qualified state machine ARN, it will fail with ValidationException.
\n \nA qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel
refers to a Distributed Map state with a label mapStateLabel
in the state machine named stateMachineName
.
\n StartExecution
is idempotent for STANDARD
workflows. For a\n STANDARD
workflow, if StartExecution
is called with the same\n name and input as a running execution, the call will succeed and return the same response as\n the original request. If the execution is closed or if the input is different, it will\n return a 400 ExecutionAlreadyExists
error. Names can be reused after 90 days.
\n StartExecution
is not idempotent for EXPRESS
workflows.
Starts a state machine execution.
\nA qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.
\nThe following are some examples of qualified and unqualified state machine ARNs:
\nThe following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel
in a state machine named myStateMachine
.
\n arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel
\n
If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException
.
The following qualified state machine ARN refers to an alias named PROD
.
\n arn:
\n
If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.
\nThe following unqualified state machine ARN refers to a state machine named myStateMachine
.
\n arn:
\n
If you start an execution with an unqualified state machine ARN, Step Functions uses the latest revision of the state machine for the execution.
\nTo start executions of a state machine version, call\n StartExecution
and provide the version ARN or the ARN of an alias that points to the version.
\n StartExecution
is idempotent for STANDARD
workflows. For a\n STANDARD
workflow, if you call StartExecution
with the same name\n and input as a running execution, the call succeeds and return the same response as the\n original request. If the execution is closed or if the input is different, it returns a\n 400 ExecutionAlreadyExists
error. You can reuse names after 90 days.
\n StartExecution
isn't idempotent for EXPRESS
workflows.
The Amazon Resource Name (ARN) of the state machine to execute.
", + "smithy.api#documentation": "The Amazon Resource Name (ARN) of the state machine to execute.
\nThe stateMachineArn
parameter accepts one of the following inputs:
\n An unqualified state machine ARN – Refers to a state machine ARN that isn't qualified with a version or alias ARN. The following is an example of an unqualified state machine ARN.
\n\n arn:
\n
Step Functions doesn't associate state machine executions that you start with an unqualified ARN with a version. This is true even if that version uses the same revision that the execution used.
\n\n A state machine version ARN – Refers to a version ARN, which is a combination of state machine ARN and the version number separated by a colon (:). The following is an example of the ARN for version 10.
\n\n arn:
\n
Step Functions doesn't associate executions that you start with a version ARN with any aliases that point to that version.
\n\n A state machine alias ARN – Refers to an alias ARN, which is a combination of state machine ARN and the alias name separated by a colon (:). The following is an example of the ARN for an alias named PROD
.
\n arn:
\n
Step Functions associates executions\n that you start with an alias ARN with that alias and the state machine version used for\n that execution.
\nThe name of the execution. This name must be unique for your Amazon Web Services account, region, and state machine for 90 days. For more information,\n see \n Limits Related to State Machine Executions in the Step Functions Developer Guide.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
" + "smithy.api#documentation": "Optional name of the execution.\n This name must be unique for your Amazon Web Services account, Region, and state machine for 90 days. For more information,\n see \n Limits Related to State Machine Executions in the Step Functions Developer Guide.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
" } }, "input": { @@ -5553,6 +5266,9 @@ "smithy.api#documentation": "Passes the X-Ray trace header. The trace header can also be passed in the request\n payload.
" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.sfn#StartExecutionOutput": { @@ -5572,6 +5288,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.sfn#StartSyncExecution": { @@ -5637,6 +5356,9 @@ "smithy.api#documentation": "Passes the X-Ray trace header. The trace header can also be passed in the request\n payload.
" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.sfn#StartSyncExecutionOutput": { @@ -5724,6 +5446,9 @@ "smithy.api#documentation": "An object that describes workflow billing details, including billed duration and memory\n use.
" } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.sfn#StateEnteredEventDetails": { @@ -5780,6 +5505,34 @@ "smithy.api#documentation": "Contains details about an exit from a state during an execution.
" } }, + "com.amazonaws.sfn#StateMachineAliasList": { + "type": "list", + "member": { + "target": "com.amazonaws.sfn#StateMachineAliasListItem" + } + }, + "com.amazonaws.sfn#StateMachineAliasListItem": { + "type": "structure", + "members": { + "stateMachineAliasArn": { + "target": "com.amazonaws.sfn#LongArn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that identifies a state machine alias. The alias ARN is a combination of state machine ARN and the alias name separated by a colon (:). For example, stateMachineARN:PROD
.
The creation date of a state machine alias.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "Contains details about a specific state machine alias.
" + } + }, "com.amazonaws.sfn#StateMachineAlreadyExists": { "type": "structure", "members": { @@ -5847,7 +5600,7 @@ "name": { "target": "com.amazonaws.sfn#Name", "traits": { - "smithy.api#documentation": "The name of the state machine.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", + "smithy.api#documentation": "The name of the state machine.
\nA name must not contain:
\nwhite space
\nbrackets < > { } [ ]
\n
wildcard characters ? *
\n
special characters \" # % \\ ^ | ~ ` $ & , ; : /
\n
control characters (U+0000-001F
, U+007F-009F
)
To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.
", "smithy.api#required": {} } }, @@ -5916,6 +5669,34 @@ "smithy.api#error": "client" } }, + "com.amazonaws.sfn#StateMachineVersionList": { + "type": "list", + "member": { + "target": "com.amazonaws.sfn#StateMachineVersionListItem" + } + }, + "com.amazonaws.sfn#StateMachineVersionListItem": { + "type": "structure", + "members": { + "stateMachineVersionArn": { + "target": "com.amazonaws.sfn#LongArn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) that identifies a state machine version. The version ARN is a combination of state machine ARN and the version number separated by a colon (:). For example, stateMachineARN:1
.
The creation date of a state machine version.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "Contains details about a specific state machine version.
" + } + }, "com.amazonaws.sfn#StopExecution": { "type": "operation", "input": { @@ -5936,7 +5717,7 @@ } ], "traits": { - "smithy.api#documentation": "Stops an execution.
\nThis API action is not supported by EXPRESS
state machines.
Stops an execution.
\nThis API action is not supported by EXPRESS
state machines.
A more detailed explanation of the cause of the failure.
" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.sfn#StopExecutionOutput": { @@ -5973,6 +5757,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.sfn#SyncExecutionStatus": { @@ -6015,7 +5802,7 @@ } }, "traits": { - "smithy.api#documentation": "Tags are key-value pairs that can be associated with Step Functions state machines and\n activities.
\nAn array of key-value pairs. For more information, see Using\n Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User\n Guide, and Controlling Access Using IAM\n Tags.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
Tags are key-value pairs that can be associated with Step Functions state machines and\n activities.
\nAn array of key-value pairs. For more information, see Using\n Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User\n Guide, and Controlling Access Using IAM\n Tags.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
Add a tag to a Step Functions resource.
\nAn array of key-value pairs. For more information, see Using\n Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User\n Guide, and Controlling Access Using IAM\n Tags.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
Add a tag to a Step Functions resource.
\nAn array of key-value pairs. For more information, see Using\n Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User\n Guide, and Controlling Access Using IAM\n Tags.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
The list of tags to add to a resource.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
The list of tags to add to a resource.
\nTags may only contain Unicode letters, digits, white space, or these symbols: _ . : / = + - @
.
The maximum number of failed items before the Map Run fails.
" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.sfn#UpdateMapRunOutput": { "type": "structure", - "members": {} + "members": {}, + "traits": { + "smithy.api#output": {} + } }, "com.amazonaws.sfn#UpdateStateMachine": { "type": "operation", @@ -6620,6 +6425,9 @@ "target": "com.amazonaws.sfn#UpdateStateMachineOutput" }, "errors": [ + { + "target": "com.amazonaws.sfn#ConflictException" + }, { "target": "com.amazonaws.sfn#InvalidArn" }, @@ -6635,6 +6443,9 @@ { "target": "com.amazonaws.sfn#MissingRequiredParameter" }, + { + "target": "com.amazonaws.sfn#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.sfn#StateMachineDeleting" }, @@ -6646,10 +6457,78 @@ } ], "traits": { - "smithy.api#documentation": "Updates an existing state machine by modifying its definition
,\n roleArn
, or loggingConfiguration
. Running executions will continue\n to use the previous definition
and roleArn
. You must include at\n least one of definition
or roleArn
or you will receive a\n MissingRequiredParameter
error.
If the given state machine Amazon Resource Name (ARN) is a qualified state machine ARN, it will fail with ValidationException.
\n \nA qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel
refers to a Distributed Map state with a label mapStateLabel
in the state machine named stateMachineName
.
All StartExecution
calls within a few seconds will use the updated\n definition
and roleArn
. Executions started immediately after\n calling UpdateStateMachine
may use the previous state machine\n definition
and roleArn
.
Updates an existing state machine by modifying its definition
,\n roleArn
, or loggingConfiguration
. Running executions will continue\n to use the previous definition
and roleArn
. You must include at\n least one of definition
or roleArn
or you will receive a\n MissingRequiredParameter
error.
A qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel
refers to a Distributed Map state with a label mapStateLabel
in the state machine named stateMachineName
.
A qualified state machine ARN can either refer to a Distributed Map state defined within a state machine, a version ARN, or an alias ARN.
\nThe following are some examples of qualified and unqualified state machine ARNs:
\nThe following qualified state machine ARN refers to a Distributed Map state with a label mapStateLabel
in a state machine named myStateMachine
.
\n arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel
\n
If you provide a qualified state machine ARN that refers to a Distributed Map state, the request fails with ValidationException
.
The following qualified state machine ARN refers to an alias named PROD
.
\n arn:
\n
If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.
\nThe following unqualified state machine ARN refers to a state machine named myStateMachine
.
\n arn:
\n
After you update your state machine, you can set the publish
parameter to\n true
in the same action to publish a new version. This\n way, you can opt-in to strict versioning of your state machine.
Step Functions assigns monotonically increasing integers for state machine versions, starting at version number 1.
\nAll StartExecution
calls within a few seconds use the updated\n definition
and roleArn
. Executions started immediately after you\n call UpdateStateMachine
may use the previous state machine\n definition
and roleArn
.
Updates the configuration of an existing state machine alias by modifying its description
or routingConfiguration
.
You must specify at least one of the description
or routingConfiguration
parameters to update a state machine alias.
\n UpdateStateMachineAlias
is an idempotent API. Step Functions bases the\n idempotency check on the stateMachineAliasArn
, description
, and\n routingConfiguration
parameters. Requests with the same parameters return an\n idempotent response.
This operation is eventually consistent. All StartExecution requests\n made within a few seconds use the latest alias configuration. Executions started immediately\n after calling UpdateStateMachineAlias
may use the previous routing\n configuration.
\n Related operations:\n
\nThe Amazon Resource Name (ARN) of the state machine alias.
", + "smithy.api#required": {} + } + }, + "description": { + "target": "com.amazonaws.sfn#AliasDescription", + "traits": { + "smithy.api#documentation": "A description of the state machine alias.
" + } + }, + "routingConfiguration": { + "target": "com.amazonaws.sfn#RoutingConfigurationList", + "traits": { + "smithy.api#documentation": "The routing configuration of the state machine alias.
\nAn array of RoutingConfig
objects that specifies up to two state machine versions that the alias starts executions for.
The date and time the state machine alias was updated.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.sfn#UpdateStateMachineInput": { "type": "structure", "members": { @@ -6675,7 +6554,7 @@ "loggingConfiguration": { "target": "com.amazonaws.sfn#LoggingConfiguration", "traits": { - "smithy.api#documentation": "The LoggingConfiguration
data type is used to set CloudWatch Logs\n options.
Use the LoggingConfiguration
data type to set CloudWatch Logs\n options.
Selects whether X-Ray tracing is enabled.
" } + }, + "publish": { + "target": "com.amazonaws.sfn#Publish", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "Specifies whether the state machine version is published. The default is\n false
. To publish a version after updating the state machine, set\n publish
to true
.
An optional description of the state machine version to publish.
\nYou can only specify the versionDescription
parameter if you've set publish
to true
.
The date and time the state machine was updated.
", "smithy.api#required": {} } + }, + "revisionId": { + "target": "com.amazonaws.sfn#RevisionId", + "traits": { + "smithy.api#documentation": "The revision identifier for the updated state machine.
" + } + }, + "stateMachineVersionArn": { + "target": "com.amazonaws.sfn#Arn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) of the published state machine version.
\nIf the publish
parameter isn't set to true
, this field returns null.