createActivity method
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.
May throw ActivityLimitExceeded. May throw InvalidName. May throw TooManyTags.
Parameter name
:
The name of the activity to create. This name must be unique for your AWS
account and region for 90 days. For more information, see
Limits Related to State Machine Executions in the AWS Step
Functions Developer Guide.
A name must not contain:
- white space
-
brackets
< > { } [ ]
-
wildcard characters
? *
-
special characters
" # % \ ^ | ~ ` $ & , ; : /
-
control characters (
U+0000-001F
,U+007F-009F
)
Parameter tags
:
The list of tags to add to a 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: _ . : / = + - @
.
Implementation
Future<CreateActivityOutput> createActivity({
required String name,
List<Tag>? tags,
}) async {
ArgumentError.checkNotNull(name, 'name');
_s.validateStringLength(
'name',
name,
1,
80,
isRequired: true,
);
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.0',
'X-Amz-Target': 'AWSStepFunctions.CreateActivity'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'name': name,
if (tags != null) 'tags': tags,
},
);
return CreateActivityOutput.fromJson(jsonResponse.body);
}