class RuleTargetInput
| Language | Type name |
|---|---|
.NET | Amazon.CDK.AWS.Events.RuleTargetInput |
Go | github.com/aws/aws-cdk-go/awscdk/v2/awsevents#RuleTargetInput |
Java | software.amazon.awscdk.services.events.RuleTargetInput |
Python | aws_cdk.aws_events.RuleTargetInput |
TypeScript (source) | aws-cdk-lib » aws_events » RuleTargetInput |
Obtainable from
Log.fromObject()
The input to send to the event target.
Example
import * as appsync from 'aws-cdk-lib/aws-appsync';
const api = new appsync.GraphqlApi(this, 'api', {
name: 'api',
definition: appsync.Definition.fromFile('schema.graphql'),
authorizationConfig: {
defaultAuthorization: { authorizationType: appsync.AuthorizationType.IAM }
},
});
const rule = new events.Rule(this, 'Rule', {
schedule: events.Schedule.rate(cdk.Duration.hours(1)),
});
rule.addTarget(new targets.AppSync(api, {
graphQLOperation: 'mutation Publish($message: String!){ publish(message: $message) { message } }',
variables: events.RuleTargetInput.fromObject({
message: 'hello world',
}),
}));
Initializer
new RuleTargetInput()
Methods
| Name | Description |
|---|---|
| bind(rule) | Return the input properties for this input object. |
| static from | Take the event target input from a path in the event JSON. |
| static from | Pass text to the event target, splitting on newlines. |
| static from | Pass a JSON object to the event target. |
| static from | Pass text to the event target. |
bind(rule)
public bind(rule: IRuleRef): RuleTargetInputProperties
Parameters
- rule
IRuleRef
Returns
Return the input properties for this input object.
static fromEventPath(path)
public static fromEventPath(path: string): RuleTargetInput
Parameters
- path
string
Returns
Take the event target input from a path in the event JSON.
static fromMultilineText(text)
public static fromMultilineText(text: string): RuleTargetInput
Parameters
- text
string
Returns
Pass text to the event target, splitting on newlines.
This is only useful when passing to a target that does not take a single argument.
May contain strings returned by EventField.from() to substitute in parts
of the matched event.
As with fromText, each line is JSON-encoded, so every line is wrapped in
double quotes in the synthesized template. Whether those quotes are visible
to the recipient depends on the target service.
static fromObject(obj)
public static fromObject(obj: any): RuleTargetInput
Parameters
- obj
any
Returns
Pass a JSON object to the event target.
May contain strings returned by EventField.from() to substitute in parts of the
matched event.
static fromText(text)
public static fromText(text: string): RuleTargetInput
Parameters
- text
string
Returns
Pass text to the event target.
May contain strings returned by EventField.from() to substitute in parts of the
matched event.
The Rule Target input value will be a single string: the string you pass
here. Do not use this method to pass a complex value like a JSON object to
a Rule Target. Use RuleTargetInput.fromObject() instead.
The target Input field must be valid JSON, so the text is JSON-encoded
when the template is synthesized. As a result a plain string is wrapped in
double quotes: fromText('something') renders as Input: '"something"'.
The quotes are part of the required JSON encoding, not an extra value added
by CDK, and cannot be removed.
Whether those quotes are visible to the recipient depends on the target
service. Some targets deliver the JSON-encoded value as-is, so the recipient
sees the surrounding quotes (for example, an SNS topic delivering to an
email subscriber shows "something"). To send a structured payload, use
RuleTargetInput.fromObject() instead.

.NET
Go
Java
Python
TypeScript (