Class: Aws::States::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::States::Client
- Includes:
- ClientStubs
- Defined in:
- gems/aws-sdk-states/lib/aws-sdk-states/client.rb
Overview
An API client for States. To construct a client, you need to configure a :region
and :credentials
.
client = Aws::States::Client.new(
region: region_name,
credentials: credentials,
# ...
)
For details on configuring region and credentials see the developer guide.
See #initialize for a full list of supported configuration options.
Instance Attribute Summary
Attributes inherited from Seahorse::Client::Base
API Operations collapse
-
#create_activity(params = {}) ⇒ Types::CreateActivityOutput
Creates an activity.
-
#create_state_machine(params = {}) ⇒ Types::CreateStateMachineOutput
Creates a state machine.
-
#delete_activity(params = {}) ⇒ Struct
Deletes an activity.
-
#delete_state_machine(params = {}) ⇒ Struct
Deletes a state machine.
-
#describe_activity(params = {}) ⇒ Types::DescribeActivityOutput
Describes an activity.
-
#describe_execution(params = {}) ⇒ Types::DescribeExecutionOutput
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.
-
#describe_map_run(params = {}) ⇒ Types::DescribeMapRunOutput
Provides information about a Map Run's configuration, progress, and results.
-
#describe_state_machine(params = {}) ⇒ Types::DescribeStateMachineOutput
Provides information about a state machine's definition, its IAM role Amazon Resource Name (ARN), and configuration.
-
#describe_state_machine_for_execution(params = {}) ⇒ Types::DescribeStateMachineForExecutionOutput
Provides information about a state machine's definition, its execution role ARN, and configuration.
-
#get_activity_task(params = {}) ⇒ Types::GetActivityTaskOutput
Used by workers to retrieve a task (with the specified activity ARN) which has been scheduled for execution by a running state machine.
-
#get_execution_history(params = {}) ⇒ Types::GetExecutionHistoryOutput
Returns the history of the specified execution as a list of events.
-
#list_activities(params = {}) ⇒ Types::ListActivitiesOutput
Lists the existing activities.
-
#list_executions(params = {}) ⇒ Types::ListExecutionsOutput
Lists all executions of a state machine or a Map Run.
-
#list_map_runs(params = {}) ⇒ Types::ListMapRunsOutput
Lists all Map Runs that were started by a given state machine execution.
-
#list_state_machines(params = {}) ⇒ Types::ListStateMachinesOutput
Lists the existing state machines.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceOutput
List tags for a given resource.
-
#send_task_failure(params = {}) ⇒ Struct
Used by activity workers and task states using the [callback][1] pattern to report that the task identified by the
taskToken
failed. -
#send_task_heartbeat(params = {}) ⇒ Struct
Used by activity workers and task states using the [callback][1] pattern to report to Step Functions that the task represented by the specified
taskToken
is still making progress. -
#send_task_success(params = {}) ⇒ Struct
Used by activity workers and task states using the [callback][1] pattern to report that the task identified by the
taskToken
completed successfully. -
#start_execution(params = {}) ⇒ Types::StartExecutionOutput
Starts a state machine execution.
-
#start_sync_execution(params = {}) ⇒ Types::StartSyncExecutionOutput
Starts a Synchronous Express state machine execution.
-
#stop_execution(params = {}) ⇒ Types::StopExecutionOutput
Stops an execution.
-
#tag_resource(params = {}) ⇒ Struct
Add a tag to a Step Functions resource.
-
#untag_resource(params = {}) ⇒ Struct
Remove a tag from a Step Functions resource.
-
#update_map_run(params = {}) ⇒ Struct
Updates an in-progress Map Run's configuration to include changes to the settings that control maximum concurrency and Map Run failure.
-
#update_state_machine(params = {}) ⇒ Types::UpdateStateMachineOutput
Updates an existing state machine by modifying its
definition
,roleArn
, orloggingConfiguration
.
Instance Method Summary collapse
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
Methods included from ClientStubs
#api_requests, #stub_data, #stub_responses
Methods inherited from Seahorse::Client::Base
add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins
Methods included from Seahorse::Client::HandlerBuilder
#handle, #handle_request, #handle_response
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
380 381 382 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 380 def initialize(*args) super end |
Instance Method Details
#create_activity(params = {}) ⇒ Types::CreateActivityOutput
Creates an activity. An activity is a task that you write in any
programming language and host on any machine that has access to Step
Functions. Activities must poll Step Functions using the
GetActivityTask
API action and respond using SendTask*
API
actions. This function lets Step Functions know the existence of your
activity and returns an identifier for use in a state machine and when
polling from the activity.
CreateActivity
is an idempotent API. Subsequent requests won’t
create a duplicate resource if it was already created.
CreateActivity
's idempotency check is based on the activity name
.
If a following request has different tags
values, Step Functions
will ignore these differences and treat it as an idempotent request of
the previous. In this case, tags
will not be updated, even if they
are different.
475 476 477 478 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 475 def create_activity(params = {}, = {}) req = build_request(:create_activity, params) req.send_request() end |
#create_state_machine(params = {}) ⇒ Types::CreateStateMachineOutput
Creates a state machine. A state machine consists of a collection of
states that can do work (Task
states), determine to which states to
transition next (Choice
states), stop an execution with an error
(Fail
states), and so on. State machines are specified using a
JSON-based, structured language. For more information, see Amazon
States Language in the Step Functions User Guide.
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
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.
616 617 618 619 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 616 def create_state_machine(params = {}, = {}) req = build_request(:create_state_machine, params) req.send_request() end |
#delete_activity(params = {}) ⇒ Struct
Deletes an activity.
638 639 640 641 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 638 def delete_activity(params = {}, = {}) req = build_request(:delete_activity, params) req.send_request() end |
#delete_state_machine(params = {}) ⇒ Struct
Deletes 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
.
EXPRESS
state machines, the deletion will happen eventually
(usually less than a minute). Running executions may emit logs after
DeleteStateMachine
API is called.
678 679 680 681 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 678 def delete_state_machine(params = {}, = {}) req = build_request(:delete_state_machine, params) req.send_request() end |
#describe_activity(params = {}) ⇒ Types::DescribeActivityOutput
Describes an activity.
715 716 717 718 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 715 def describe_activity(params = {}, = {}) req = build_request(:describe_activity, params) req.send_request() end |
#describe_execution(params = {}) ⇒ Types::DescribeExecutionOutput
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.
This API action is not supported by EXPRESS
state machine executions
unless they were dispatched by a Map Run.
780 781 782 783 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 780 def describe_execution(params = {}, = {}) req = build_request(:describe_execution, params) req.send_request() end |
#describe_map_run(params = {}) ⇒ Types::DescribeMapRunOutput
Provides information about a Map Run's configuration, progress, and results. For more information, see Examining Map Run in the Step Functions Developer Guide.
846 847 848 849 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 846 def describe_map_run(params = {}, = {}) req = build_request(:describe_map_run, params) req.send_request() end |
#describe_state_machine(params = {}) ⇒ Types::DescribeStateMachineOutput
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
.
910 911 912 913 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 910 def describe_state_machine(params = {}, = {}) req = build_request(:describe_state_machine, params) req.send_request() end |
#describe_state_machine_for_execution(params = {}) ⇒ Types::DescribeStateMachineForExecutionOutput
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.
This API action is not supported by EXPRESS
state machines.
969 970 971 972 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 969 def describe_state_machine_for_execution(params = {}, = {}) req = build_request(:describe_state_machine_for_execution, params) req.send_request() end |
#get_activity_task(params = {}) ⇒ Types::GetActivityTaskOutput
Used by workers to retrieve a task (with the specified activity ARN)
which has been scheduled for execution by a running state machine.
This initiates a long poll, where the service holds the HTTP
connection open and responds as soon as a task becomes available (i.e.
an execution of a task of this type is needed.) The maximum time the
service holds on to the request before responding is 60 seconds. If no
task is available within 60 seconds, the poll returns a taskToken
with a null string.
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).
Polling with GetActivityTask
can cause latency in some
implementations. See Avoid Latency When Polling for Activity
Tasks in the Step Functions Developer Guide.
1029 1030 1031 1032 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1029 def get_activity_task(params = {}, = {}) req = build_request(:get_activity_task, params) req.send_request() end |
#get_execution_history(params = {}) ⇒ Types::GetExecutionHistoryOutput
Returns the history of the specified execution as a list of events. By
default, the results are returned in ascending order of the
timeStamp
of the events. Use the 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. 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 returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1195 1196 1197 1198 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1195 def get_execution_history(params = {}, = {}) req = build_request(:get_execution_history, params) req.send_request() end |
#list_activities(params = {}) ⇒ Types::ListActivitiesOutput
Lists the existing activities.
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 returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1256 1257 1258 1259 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1256 def list_activities(params = {}, = {}) req = build_request(:list_activities, params) req.send_request() end |
#list_executions(params = {}) ⇒ Types::ListExecutionsOutput
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.
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. 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 returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1357 1358 1359 1360 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1357 def list_executions(params = {}, = {}) req = build_request(:list_executions, params) req.send_request() end |
#list_map_runs(params = {}) ⇒ Types::ListMapRunsOutput
Lists all Map Runs that were started by a given state machine
execution. Use this API action to obtain Map Run ARNs, and then call
DescribeMapRun
to obtain more information, if needed.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1415 1416 1417 1418 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1415 def list_map_runs(params = {}, = {}) req = build_request(:list_map_runs, params) req.send_request() end |
#list_state_machines(params = {}) ⇒ Types::ListStateMachinesOutput
Lists the existing state machines.
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 returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1477 1478 1479 1480 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1477 def list_state_machines(params = {}, = {}) req = build_request(:list_state_machines, params) req.send_request() end |
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceOutput
List tags for a given resource.
Tags may only contain Unicode letters, digits, white space, or these
symbols: _ . : / = + - @
.
1511 1512 1513 1514 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1511 def (params = {}, = {}) req = build_request(:list_tags_for_resource, params) req.send_request() end |
#send_task_failure(params = {}) ⇒ Struct
Used by activity workers and task states using the callback
pattern to report that the task identified by the taskToken
failed.
1553 1554 1555 1556 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1553 def send_task_failure(params = {}, = {}) req = build_request(:send_task_failure, params) req.send_request() end |
#send_task_heartbeat(params = {}) ⇒ Struct
Used by activity workers and task states using the callback
pattern to report to Step Functions that the task represented by the
specified taskToken
is still making progress. This action resets the
Heartbeat
clock. The Heartbeat
threshold is specified in the state
machine's Amazon States Language definition (HeartbeatSeconds
).
This action does not in itself create an event in the execution
history. However, if the task times out, the execution history
contains an ActivityTimedOut
entry for activities, or a
TaskTimedOut
entry for for tasks using the job run or
callback pattern.
Timeout
of a task, defined in the state machine's Amazon States
Language definition, is its maximum allowed duration, regardless of
the number of SendTaskHeartbeat requests received. Use
HeartbeatSeconds
to configure the timeout interval for heartbeats.
1603 1604 1605 1606 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1603 def send_task_heartbeat(params = {}, = {}) req = build_request(:send_task_heartbeat, params) req.send_request() end |
#send_task_success(params = {}) ⇒ Struct
Used by activity workers and task states using the callback
pattern to report that the task identified by the taskToken
completed successfully.
1643 1644 1645 1646 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1643 def send_task_success(params = {}, = {}) req = build_request(:send_task_success, params) req.send_request() end |
#start_execution(params = {}) ⇒ Types::StartExecutionOutput
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.
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
.
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.
StartExecution
is not idempotent for EXPRESS
workflows.
1739 1740 1741 1742 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1739 def start_execution(params = {}, = {}) req = build_request(:start_execution, params) req.send_request() end |
#start_sync_execution(params = {}) ⇒ Types::StartSyncExecutionOutput
Starts a Synchronous Express state machine execution.
StartSyncExecution
is not available for STANDARD
workflows.
StartSyncExecution
will return a 200 OK
response, even if your
execution fails, because the status code in the API response doesn't
reflect function errors. Error codes are reserved for errors that
prevent your execution from running, such as permissions errors, limit
errors, or issues with your state machine code and configuration.
1831 1832 1833 1834 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1831 def start_sync_execution(params = {}, = {}) req = build_request(:start_sync_execution, params) req.send_request() end |
#stop_execution(params = {}) ⇒ Types::StopExecutionOutput
Stops an execution.
This API action is not supported by EXPRESS
state machines.
1869 1870 1871 1872 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1869 def stop_execution(params = {}, = {}) req = build_request(:stop_execution, params) req.send_request() end |
#tag_resource(params = {}) ⇒ Struct
Add a tag to a Step Functions resource.
An array of key-value pairs. For more information, see Using Cost Allocation Tags in the Amazon Web Services Billing and Cost Management User Guide, and Controlling Access Using IAM Tags.
Tags may only contain Unicode letters, digits, white space, or these
symbols: _ . : / = + - @
.
1916 1917 1918 1919 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1916 def tag_resource(params = {}, = {}) req = build_request(:tag_resource, params) req.send_request() end |
#untag_resource(params = {}) ⇒ Struct
Remove a tag from a Step Functions resource
1943 1944 1945 1946 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1943 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_map_run(params = {}) ⇒ Struct
Updates an in-progress Map Run's configuration to include changes to the settings that control maximum concurrency and Map Run failure.
1979 1980 1981 1982 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1979 def update_map_run(params = {}, = {}) req = build_request(:update_map_run, params) req.send_request() end |
#update_state_machine(params = {}) ⇒ Types::UpdateStateMachineOutput
Updates an existing state machine by modifying its definition
,
roleArn
, or loggingConfiguration
. Running executions will continue
to use the previous definition
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
.
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
definition
and roleArn
.
2062 2063 2064 2065 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 2062 def update_state_machine(params = {}, = {}) req = build_request(:update_state_machine, params) req.send_request() end |