The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Paws::CloudWatchEvents::InputTransformer

USAGE

This class represents one of two things:

Arguments in a call to a service

Use the attributes of this class as arguments to methods. You shouldn't make instances of this class. Each attribute should be used as a named argument in the calls that expect this type of object.

As an example, if Att1 is expected to be a Paws::CloudWatchEvents::InputTransformer object:

  $service_obj->Method(Att1 => { InputPathsMap => $value, ..., InputTemplate => $value  });

Results returned from an API call

Use accessors for each attribute. If Att1 is expected to be an Paws::CloudWatchEvents::InputTransformer object:

  $result = $service_obj->Method(...);
  $result->Att1->InputPathsMap

DESCRIPTION

Contains the parameters needed for you to provide custom input to a target based on one or more pieces of data extracted from the event.

ATTRIBUTES

InputPathsMap => Paws::CloudWatchEvents::TransformerPaths

Map of JSON paths to be extracted from the event. You can then insert these in the template in InputTemplate to produce the output you want to be sent to the target.

InputPathsMap is an array key-value pairs, where each value is a valid JSON path. You can have as many as 100 key-value pairs. You must use JSON dot notation, not bracket notation.

The keys cannot start with "AWS."

REQUIRED InputTemplate => Str

Input template where you specify placeholders that will be filled with the values of the keys from InputPathsMap to customize the data sent to the target. Enclose each InputPathsMaps value in brackets: <value> The InputTemplate must be valid JSON.

If InputTemplate is a JSON object (surrounded by curly braces), the following restrictions apply:

  • The placeholder cannot be used as an object key.

The following example shows the syntax for using InputPathsMap and InputTemplate.

"InputTransformer":

{

"InputPathsMap": {"instance": "$.detail.instance","status": "$.detail.status"},

"InputTemplate": "<instance> is in state <status>"

}

To have the InputTemplate include quote marks within a JSON string, escape each quote marks with a slash, as in the following example:

"InputTransformer":

{

"InputPathsMap": {"instance": "$.detail.instance","status": "$.detail.status"},

"InputTemplate": "<instance> is in state \"<status>\""

}

The InputTemplate can also be valid JSON with varibles in quotes or out, as in the following example:

"InputTransformer":

{

"InputPathsMap": {"instance": "$.detail.instance","status": "$.detail.status"},

"InputTemplate": '{"myInstance": <instance>,"myStatus": "<instance> is in state \"<status>\""}'

}

SEE ALSO

This class forms part of Paws, describing an object used in Paws::CloudWatchEvents

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues