Class: Aws::States::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::States::Client
- Includes:
- ClientStubs
- Defined in:
- 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](/sdk-for-ruby/v3/developer-guide/setup-config.html).
See #initialize for a full list of supported configuration options.
Class Attribute Summary collapse
- .identifier ⇒ Object readonly private
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
Describes an execution.
-
#describe_state_machine(params = {}) ⇒ Types::DescribeStateMachineOutput
Describes a state machine.
-
#describe_state_machine_for_execution(params = {}) ⇒ Types::DescribeStateMachineForExecutionOutput
Describes the state machine associated with a specific execution.
-
#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 the executions of a state machine that meet the filtering criteria.
-
#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] 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] 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] pattern to report that the task identified by the ‘taskToken` completed successfully.
-
#start_execution(params = {}) ⇒ Types::StartExecutionOutput
Starts a 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_state_machine(params = {}) ⇒ Types::UpdateStateMachineOutput
Updates an existing state machine by modifying its ‘definition`, `roleArn`, or `loggingConfiguration`.
Class Method Summary collapse
- .errors_module ⇒ Object private
Instance Method Summary collapse
- #build_request(operation_name, params = {}) ⇒ Object private
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
334 335 336 |
# File 'lib/aws-sdk-states/client.rb', line 334 def initialize(*args) super end |
Class Attribute Details
.identifier ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1701 1702 1703 |
# File 'lib/aws-sdk-states/client.rb', line 1701 def identifier @identifier end |
Class Method Details
.errors_module ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1704 1705 1706 |
# File 'lib/aws-sdk-states/client.rb', line 1704 def errors_module Errors end |
Instance Method Details
#build_request(operation_name, params = {}) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 |
# File 'lib/aws-sdk-states/client.rb', line 1679 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-states' context[:gem_version] = '1.36.0' Seahorse::Client::Request.new(handlers, context) end |
#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 AWS 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.
<note markdown=“1”> This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
</note>
<note markdown=“1”> ‘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.
</note>
429 430 431 432 |
# File 'lib/aws-sdk-states/client.rb', line 429 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 AWS Step Functions User Guide.
<note markdown=“1”> This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
</note>
<note markdown=“1”> ‘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.
</note>
[1]: docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html
570 571 572 573 |
# File 'lib/aws-sdk-states/client.rb', line 570 def create_state_machine(params = {}, = {}) req = build_request(:create_state_machine, params) req.send_request() end |
#delete_activity(params = {}) ⇒ Struct
Deletes an activity.
592 593 594 595 |
# File 'lib/aws-sdk-states/client.rb', line 592 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.
<note markdown=“1”> For ‘EXPRESS`state machines, the deletion will happen eventually (usually less than a minute). Running executions may emit logs after `DeleteStateMachine` API is called.
</note>
622 623 624 625 |
# File 'lib/aws-sdk-states/client.rb', line 622 def delete_state_machine(params = {}, = {}) req = build_request(:delete_state_machine, params) req.send_request() end |
#describe_activity(params = {}) ⇒ Types::DescribeActivityOutput
Describes an activity.
<note markdown=“1”> This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
</note>
659 660 661 662 |
# File 'lib/aws-sdk-states/client.rb', line 659 def describe_activity(params = {}, = {}) req = build_request(:describe_activity, params) req.send_request() end |
#describe_execution(params = {}) ⇒ Types::DescribeExecutionOutput
Describes an execution.
<note markdown=“1”> This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
</note>
This API action is not supported by ‘EXPRESS` state machines.
714 715 716 717 |
# File 'lib/aws-sdk-states/client.rb', line 714 def describe_execution(params = {}, = {}) req = build_request(:describe_execution, params) req.send_request() end |
#describe_state_machine(params = {}) ⇒ Types::DescribeStateMachineOutput
Describes a state machine.
<note markdown=“1”> This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
</note>
766 767 768 769 |
# File 'lib/aws-sdk-states/client.rb', line 766 def describe_state_machine(params = {}, = {}) req = build_request(:describe_state_machine, params) req.send_request() end |
#describe_state_machine_for_execution(params = {}) ⇒ Types::DescribeStateMachineForExecutionOutput
Describes the state machine associated with a specific execution.
<note markdown=“1”> This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
</note>
This API action is not supported by ‘EXPRESS` state machines.
817 818 819 820 |
# File 'lib/aws-sdk-states/client.rb', line 817 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.
[1]: docs.aws.amazon.com/step-functions/latest/dg/bp-activity-pollers.html
873 874 875 876 |
# File 'lib/aws-sdk-states/client.rb', line 873 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.
1034 1035 1036 1037 |
# File 'lib/aws-sdk-states/client.rb', line 1034 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.
<note markdown=“1”> This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
</note>
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1095 1096 1097 1098 |
# File 'lib/aws-sdk-states/client.rb', line 1095 def list_activities(params = {}, = {}) req = build_request(:list_activities, params) req.send_request() end |
#list_executions(params = {}) ⇒ Types::ListExecutionsOutput
Lists the executions of a state machine that meet the filtering criteria. 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.
<note markdown=“1”> This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
</note>
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.
1173 1174 1175 1176 |
# File 'lib/aws-sdk-states/client.rb', line 1173 def list_executions(params = {}, = {}) req = build_request(:list_executions, 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.
<note markdown=“1”> This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.
</note>
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1235 1236 1237 1238 |
# File 'lib/aws-sdk-states/client.rb', line 1235 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: ‘_ . : / = + - @`.
1269 1270 1271 1272 |
# File 'lib/aws-sdk-states/client.rb', line 1269 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.
[1]: docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token
1311 1312 1313 1314 |
# File 'lib/aws-sdk-states/client.rb', line 1311 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][1
-
pattern.
<note markdown=“1”> The ‘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.
</note>
[1]: docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token [2]: docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-sync
1361 1362 1363 1364 |
# File 'lib/aws-sdk-states/client.rb', line 1361 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.
[1]: docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token
1401 1402 1403 1404 |
# File 'lib/aws-sdk-states/client.rb', line 1401 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.
<note markdown=“1”> ‘StartExecution` is idempotent. 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.
</note>
1485 1486 1487 1488 |
# File 'lib/aws-sdk-states/client.rb', line 1485 def start_execution(params = {}, = {}) req = build_request(:start_execution, params) req.send_request() end |
#stop_execution(params = {}) ⇒ Types::StopExecutionOutput
Stops an execution.
This API action is not supported by ‘EXPRESS` state machines.
1523 1524 1525 1526 |
# File 'lib/aws-sdk-states/client.rb', line 1523 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 *AWS Billing and Cost Management User Guide*, and [Controlling Access Using IAM Tags].
Tags may only contain Unicode letters, digits, white space, or these symbols: ‘_ . : / = + - @`.
[1]: docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html [2]: docs.aws.amazon.com/IAM/latest/UserGuide/access_iam-tags.html
1570 1571 1572 1573 |
# File 'lib/aws-sdk-states/client.rb', line 1570 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
1597 1598 1599 1600 |
# File 'lib/aws-sdk-states/client.rb', line 1597 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, 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.
<note markdown=“1”> 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 `definition` and `roleArn`.
</note>
1670 1671 1672 1673 |
# File 'lib/aws-sdk-states/client.rb', line 1670 def update_state_machine(params = {}, = {}) req = build_request(:update_state_machine, params) req.send_request() end |
#waiter_names ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1694 1695 1696 |
# File 'lib/aws-sdk-states/client.rb', line 1694 def waiter_names [] end |