-
Notifications
You must be signed in to change notification settings - Fork 17
/
awsstepfunctionstasks_CallApiGatewayHttpApiEndpointProps.go
93 lines (90 loc) · 4.01 KB
/
awsstepfunctionstasks_CallApiGatewayHttpApiEndpointProps.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
package awsstepfunctionstasks
import (
"github.com/aws/aws-cdk-go/awscdk"
"github.com/aws/aws-cdk-go/awscdk/awsstepfunctions"
)
// Properties for calling an HTTP API Endpoint.
//
// Example:
// import apigatewayv2 "github.com/aws/aws-cdk-go/awscdk"
//
// httpApi := apigatewayv2.NewHttpApi(this, jsii.String("MyHttpApi"))
//
// invokeTask := tasks.NewCallApiGatewayHttpApiEndpoint(this, jsii.String("Call HTTP API"), &callApiGatewayHttpApiEndpointProps{
// apiId: httpApi.apiId,
// apiStack: awscdk.*stack.of(httpApi),
// method: tasks.httpMethod_GET,
// })
//
// Experimental.
type CallApiGatewayHttpApiEndpointProps struct {
// An optional description for this state.
// Experimental.
Comment *string `field:"optional" json:"comment" yaml:"comment"`
// Timeout for the heartbeat.
// Experimental.
Heartbeat awscdk.Duration `field:"optional" json:"heartbeat" yaml:"heartbeat"`
// JSONPath expression to select part of the state to be the input to this state.
//
// May also be the special value JsonPath.DISCARD, which will cause the effective
// input to be the empty object {}.
// Experimental.
InputPath *string `field:"optional" json:"inputPath" yaml:"inputPath"`
// AWS Step Functions integrates with services directly in the Amazon States Language.
//
// You can control these AWS services using service integration patterns.
// See: https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token
//
// Experimental.
IntegrationPattern awsstepfunctions.IntegrationPattern `field:"optional" json:"integrationPattern" yaml:"integrationPattern"`
// JSONPath expression to select select a portion of the state output to pass to the next state.
//
// May also be the special value JsonPath.DISCARD, which will cause the effective
// output to be the empty object {}.
// Experimental.
OutputPath *string `field:"optional" json:"outputPath" yaml:"outputPath"`
// JSONPath expression to indicate where to inject the state's output.
//
// May also be the special value JsonPath.DISCARD, which will cause the state's
// input to become its output.
// Experimental.
ResultPath *string `field:"optional" json:"resultPath" yaml:"resultPath"`
// The JSON that will replace the state's raw result and become the effective result before ResultPath is applied.
//
// You can use ResultSelector to create a payload with values that are static
// or selected from the state's raw result.
// See: https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector
//
// Experimental.
ResultSelector *map[string]interface{} `field:"optional" json:"resultSelector" yaml:"resultSelector"`
// Timeout for the state machine.
// Experimental.
Timeout awscdk.Duration `field:"optional" json:"timeout" yaml:"timeout"`
// Http method for the API.
// Experimental.
Method HttpMethod `field:"required" json:"method" yaml:"method"`
// Path parameters appended after API endpoint.
// Experimental.
ApiPath *string `field:"optional" json:"apiPath" yaml:"apiPath"`
// Authentication methods.
// Experimental.
AuthType AuthType `field:"optional" json:"authType" yaml:"authType"`
// HTTP request information that does not relate to contents of the request.
// Experimental.
Headers awsstepfunctions.TaskInput `field:"optional" json:"headers" yaml:"headers"`
// Query strings attatched to end of request.
// Experimental.
QueryParameters awsstepfunctions.TaskInput `field:"optional" json:"queryParameters" yaml:"queryParameters"`
// HTTP Request body.
// Experimental.
RequestBody awsstepfunctions.TaskInput `field:"optional" json:"requestBody" yaml:"requestBody"`
// The Id of the API to call.
// Experimental.
ApiId *string `field:"required" json:"apiId" yaml:"apiId"`
// The Stack in which the API is defined.
// Experimental.
ApiStack awscdk.Stack `field:"required" json:"apiStack" yaml:"apiStack"`
// Name of the stage where the API is deployed to in API Gateway.
// Experimental.
StageName *string `field:"optional" json:"stageName" yaml:"stageName"`
}