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.
375 376 377 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 375 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.
470 471 472 473 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 470 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.
611 612 613 614 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 611 def create_state_machine(params = {}, = {}) req = build_request(:create_state_machine, params) req.send_request() end |
#delete_activity(params = {}) ⇒ Struct
Deletes an activity.
633 634 635 636 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 633 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.
673 674 675 676 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 673 def delete_state_machine(params = {}, = {}) req = build_request(:delete_state_machine, params) req.send_request() end |
#describe_activity(params = {}) ⇒ Types::DescribeActivityOutput
Describes an activity.
710 711 712 713 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 710 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.
775 776 777 778 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 775 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.
841 842 843 844 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 841 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
.
905 906 907 908 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 905 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.
964 965 966 967 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 964 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.
1024 1025 1026 1027 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1024 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.
1190 1191 1192 1193 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1190 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.
1251 1252 1253 1254 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1251 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.
1352 1353 1354 1355 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1352 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.
1410 1411 1412 1413 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1410 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.
1472 1473 1474 1475 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1472 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: _ . : / = + - @
.
1506 1507 1508 1509 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1506 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.
1548 1549 1550 1551 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1548 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.
1598 1599 1600 1601 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1598 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.
1638 1639 1640 1641 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1638 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.
1734 1735 1736 1737 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1734 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.
1826 1827 1828 1829 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1826 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.
1864 1865 1866 1867 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1864 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: _ . : / = + - @
.
1911 1912 1913 1914 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1911 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
1938 1939 1940 1941 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1938 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.
1974 1975 1976 1977 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 1974 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
.
2057 2058 2059 2060 |
# File 'gems/aws-sdk-states/lib/aws-sdk-states/client.rb', line 2057 def update_state_machine(params = {}, = {}) req = build_request(:update_state_machine, params) req.send_request() end |