NAME

Paws::IoTAnalytics::CreatePipeline - Arguments for method CreatePipeline on Paws::IoTAnalytics

DESCRIPTION

This class represents the parameters used for calling the method CreatePipeline on the AWS IoT Analytics service. Use the attributes of this class as arguments to method CreatePipeline.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreatePipeline.

SYNOPSIS

my $iotanalytics = Paws->service('IoTAnalytics');
my $CreatePipelineResponse = $iotanalytics->CreatePipeline(
  PipelineActivities => [
    {
      AddAttributes => {
        Attributes => {
          'MyAttributeName' => 'MyAttributeName'
          ,    # key: min: 1, max: 256, value: min: 1, max: 256
        },    # min: 1, max: 50
        Name => 'MyActivityName',    # min: 1, max: 128
        Next => 'MyActivityName',    # min: 1, max: 128
      },    # OPTIONAL
      Channel => {
        ChannelName => 'MyChannelName',     # min: 1, max: 128
        Name        => 'MyActivityName',    # min: 1, max: 128
        Next        => 'MyActivityName',    # min: 1, max: 128
      },    # OPTIONAL
      Datastore => {
        DatastoreName => 'MyDatastoreName',    # min: 1, max: 128
        Name          => 'MyActivityName',     # min: 1, max: 128

      },    # OPTIONAL
      DeviceRegistryEnrich => {
        Attribute => 'MyAttributeName',    # min: 1, max: 256
        Name      => 'MyActivityName',     # min: 1, max: 128
        RoleArn   => 'MyRoleArn',          # min: 20, max: 2048
        ThingName => 'MyAttributeName',    # min: 1, max: 256
        Next      => 'MyActivityName',     # min: 1, max: 128
      },    # OPTIONAL
      DeviceShadowEnrich => {
        Attribute => 'MyAttributeName',    # min: 1, max: 256
        Name      => 'MyActivityName',     # min: 1, max: 128
        RoleArn   => 'MyRoleArn',          # min: 20, max: 2048
        ThingName => 'MyAttributeName',    # min: 1, max: 256
        Next      => 'MyActivityName',     # min: 1, max: 128
      },    # OPTIONAL
      Filter => {
        Filter => 'MyFilterExpression',    # min: 1, max: 256
        Name   => 'MyActivityName',        # min: 1, max: 128
        Next   => 'MyActivityName',        # min: 1, max: 128
      },    # OPTIONAL
      Lambda => {
        BatchSize  => 1,                   # min: 1, max: 1000
        LambdaName => 'MyLambdaName',      # min: 1, max: 64
        Name       => 'MyActivityName',    # min: 1, max: 128
        Next       => 'MyActivityName',    # min: 1, max: 128
      },    # OPTIONAL
      Math => {
        Attribute => 'MyAttributeName',     # min: 1, max: 256
        Math      => 'MyMathExpression',    # min: 1, max: 256
        Name      => 'MyActivityName',      # min: 1, max: 128
        Next      => 'MyActivityName',      # min: 1, max: 128
      },    # OPTIONAL
      RemoveAttributes => {
        Attributes => [
          'MyAttributeName', ...    # min: 1, max: 256
        ],    # min: 1, max: 50
        Name => 'MyActivityName',    # min: 1, max: 128
        Next => 'MyActivityName',    # min: 1, max: 128
      },    # OPTIONAL
      SelectAttributes => {
        Attributes => [
          'MyAttributeName', ...    # min: 1, max: 256
        ],    # min: 1, max: 50
        Name => 'MyActivityName',    # min: 1, max: 128
        Next => 'MyActivityName',    # min: 1, max: 128
      },    # OPTIONAL
    },
    ...
  ],
  PipelineName => 'MyPipelineName',
  Tags         => [
    {
      Key   => 'MyTagKey',      # min: 1, max: 256
      Value => 'MyTagValue',    # min: 1, max: 256

    },
    ...
  ],    # OPTIONAL
);

# Results:
my $PipelineArn  = $CreatePipelineResponse->PipelineArn;
my $PipelineName = $CreatePipelineResponse->PipelineName;

# Returns a L<Paws::IoTAnalytics::CreatePipelineResponse> object.

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/iotanalytics/CreatePipeline

ATTRIBUTES

REQUIRED PipelineActivities => ArrayRef[Paws::IoTAnalytics::PipelineActivity]

A list of PipelineActivity objects. Activities perform transformations on your messages, such as removing, renaming or adding message attributes; filtering messages based on attribute values; invoking your Lambda functions on messages for advanced processing; or performing mathematical transformations to normalize device data.

The list can be 2-25 PipelineActivity objects and must contain both a channel and a datastore activity. Each entry in the list must contain only one activity. For example:

pipelineActivities = [ { "channel": { ... } }, { "lambda": { ... } }, ... ]

REQUIRED PipelineName => Str

The name of the pipeline.

Tags => ArrayRef[Paws::IoTAnalytics::Tag]

Metadata which can be used to manage the pipeline.

SEE ALSO

This class forms part of Paws, documenting arguments for method CreatePipeline in Paws::IoTAnalytics

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