1// Code generated by smithy-go-codegen DO NOT EDIT. 2 3package types 4 5import ( 6 smithydocument "github.com/aws/smithy-go/document" 7 "time" 8) 9 10// An activity that adds other attributes based on existing attributes in the 11// message. 12type AddAttributesActivity struct { 13 14 // A list of 1-50 AttributeNameMapping objects that map an existing attribute to a 15 // new attribute. The existing attributes remain in the message, so if you want to 16 // remove the originals, use RemoveAttributeActivity. 17 // 18 // This member is required. 19 Attributes map[string]string 20 21 // The name of the addAttributes activity. 22 // 23 // This member is required. 24 Name *string 25 26 // The next activity in the pipeline. 27 Next *string 28 29 noSmithyDocumentSerde 30} 31 32// Contains informations about errors. 33type BatchPutMessageErrorEntry struct { 34 35 // The code associated with the error. 36 ErrorCode *string 37 38 // The message associated with the error. 39 ErrorMessage *string 40 41 // The ID of the message that caused the error. See the value corresponding to the 42 // messageId key in the message object. 43 MessageId *string 44 45 noSmithyDocumentSerde 46} 47 48// A collection of data from an MQTT topic. Channels archive the raw, unprocessed 49// messages before publishing the data to a pipeline. 50type Channel struct { 51 52 // The ARN of the channel. 53 Arn *string 54 55 // When the channel was created. 56 CreationTime *time.Time 57 58 // The last time when a new message arrived in the channel. IoT Analytics updates 59 // this value at most once per minute for one channel. Hence, the 60 // lastMessageArrivalTime value is an approximation. This feature only applies to 61 // messages that arrived in the data store after October 23, 2020. 62 LastMessageArrivalTime *time.Time 63 64 // When the channel was last updated. 65 LastUpdateTime *time.Time 66 67 // The name of the channel. 68 Name *string 69 70 // How long, in days, message data is kept for the channel. 71 RetentionPeriod *RetentionPeriod 72 73 // The status of the channel. 74 Status ChannelStatus 75 76 // Where channel data is stored. You can choose one of serviceManagedS3 or 77 // customerManagedS3 storage. If not specified, the default is serviceManagedS3. 78 // You can't change this storage option after the channel is created. 79 Storage *ChannelStorage 80 81 noSmithyDocumentSerde 82} 83 84// The activity that determines the source of the messages to be processed. 85type ChannelActivity struct { 86 87 // The name of the channel from which the messages are processed. 88 // 89 // This member is required. 90 ChannelName *string 91 92 // The name of the channel activity. 93 // 94 // This member is required. 95 Name *string 96 97 // The next activity in the pipeline. 98 Next *string 99 100 noSmithyDocumentSerde 101} 102 103// Specifies one or more sets of channel messages. 104type ChannelMessages struct { 105 106 // Specifies one or more keys that identify the Amazon Simple Storage Service 107 // (Amazon S3) objects that save your channel messages. You must use the full path 108 // for the key. Example path: channel/mychannel/__dt=2020-02-29 109 // 00:00:00/1582940490000_1582940520000_123456789012_mychannel_0_2118.0.json.gz 110 S3Paths []string 111 112 noSmithyDocumentSerde 113} 114 115// Statistics information about the channel. 116type ChannelStatistics struct { 117 118 // The estimated size of the channel. 119 Size *EstimatedResourceSize 120 121 noSmithyDocumentSerde 122} 123 124// Where channel data is stored. You may choose one of serviceManagedS3, 125// customerManagedS3 storage. If not specified, the default is serviceManagedS3. 126// This can't be changed after creation of the channel. 127type ChannelStorage struct { 128 129 // Used to store channel data in an S3 bucket that you manage. If customer managed 130 // storage is selected, the retentionPeriod parameter is ignored. You can't change 131 // the choice of S3 storage after the data store is created. 132 CustomerManagedS3 *CustomerManagedChannelS3Storage 133 134 // Used to store channel data in an S3 bucket managed by IoT Analytics. You can't 135 // change the choice of S3 storage after the data store is created. 136 ServiceManagedS3 *ServiceManagedChannelS3Storage 137 138 noSmithyDocumentSerde 139} 140 141// Where channel data is stored. 142type ChannelStorageSummary struct { 143 144 // Used to store channel data in an S3 bucket that you manage. 145 CustomerManagedS3 *CustomerManagedChannelS3StorageSummary 146 147 // Used to store channel data in an S3 bucket managed by IoT Analytics. 148 ServiceManagedS3 *ServiceManagedChannelS3StorageSummary 149 150 noSmithyDocumentSerde 151} 152 153// A summary of information about a channel. 154type ChannelSummary struct { 155 156 // The name of the channel. 157 ChannelName *string 158 159 // Where channel data is stored. 160 ChannelStorage *ChannelStorageSummary 161 162 // When the channel was created. 163 CreationTime *time.Time 164 165 // The last time when a new message arrived in the channel. IoT Analytics updates 166 // this value at most once per minute for one channel. Hence, the 167 // lastMessageArrivalTime value is an approximation. This feature only applies to 168 // messages that arrived in the data store after October 23, 2020. 169 LastMessageArrivalTime *time.Time 170 171 // The last time the channel was updated. 172 LastUpdateTime *time.Time 173 174 // The status of the channel. 175 Status ChannelStatus 176 177 noSmithyDocumentSerde 178} 179 180// Contains information about a column that stores your data. 181type Column struct { 182 183 // The name of the column. 184 // 185 // This member is required. 186 Name *string 187 188 // The type of data. For more information about the supported data types, see 189 // Common data types 190 // (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-common.html) in the 191 // Glue Developer Guide. 192 // 193 // This member is required. 194 Type *string 195 196 noSmithyDocumentSerde 197} 198 199// Information required to run the containerAction to produce dataset contents. 200type ContainerDatasetAction struct { 201 202 // The ARN of the role that gives permission to the system to access required 203 // resources to run the containerAction. This includes, at minimum, permission to 204 // retrieve the dataset contents that are the input to the containerized 205 // application. 206 // 207 // This member is required. 208 ExecutionRoleArn *string 209 210 // The ARN of the Docker container stored in your account. The Docker container 211 // contains an application and required support libraries and is used to generate 212 // dataset contents. 213 // 214 // This member is required. 215 Image *string 216 217 // Configuration of the resource that executes the containerAction. 218 // 219 // This member is required. 220 ResourceConfiguration *ResourceConfiguration 221 222 // The values of variables used in the context of the execution of the 223 // containerized application (basically, parameters passed to the application). 224 // Each variable must have a name and a value given by one of stringValue, 225 // datasetContentVersionValue, or outputFileUriValue. 226 Variables []Variable 227 228 noSmithyDocumentSerde 229} 230 231// Used to store channel data in an S3 bucket that you manage. If customer-managed 232// storage is selected, the retentionPeriod parameter is ignored. You can't change 233// the choice of S3 storage after the data store is created. 234type CustomerManagedChannelS3Storage struct { 235 236 // The name of the S3 bucket in which channel data is stored. 237 // 238 // This member is required. 239 Bucket *string 240 241 // The ARN of the role that grants IoT Analytics permission to interact with your 242 // Amazon S3 resources. 243 // 244 // This member is required. 245 RoleArn *string 246 247 // (Optional) The prefix used to create the keys of the channel data objects. Each 248 // object in an S3 bucket has a key that is its unique identifier in the bucket. 249 // Each object in a bucket has exactly one key. The prefix must end with a forward 250 // slash (/). 251 KeyPrefix *string 252 253 noSmithyDocumentSerde 254} 255 256// Used to store channel data in an S3 bucket that you manage. 257type CustomerManagedChannelS3StorageSummary struct { 258 259 // The name of the S3 bucket in which channel data is stored. 260 Bucket *string 261 262 // (Optional) The prefix used to create the keys of the channel data objects. Each 263 // object in an S3 bucket has a key that is its unique identifier within the bucket 264 // (each object in a bucket has exactly one key). The prefix must end with a 265 // forward slash (/). 266 KeyPrefix *string 267 268 // The ARN of the role that grants IoT Analytics permission to interact with your 269 // Amazon S3 resources. 270 RoleArn *string 271 272 noSmithyDocumentSerde 273} 274 275// S3-customer-managed; When you choose customer-managed storage, the 276// retentionPeriod parameter is ignored. You can't change the choice of Amazon S3 277// storage after your data store is created. 278type CustomerManagedDatastoreS3Storage struct { 279 280 // The name of the Amazon S3 bucket where your data is stored. 281 // 282 // This member is required. 283 Bucket *string 284 285 // The ARN of the role that grants IoT Analytics permission to interact with your 286 // Amazon S3 resources. 287 // 288 // This member is required. 289 RoleArn *string 290 291 // (Optional) The prefix used to create the keys of the data store data objects. 292 // Each object in an Amazon S3 bucket has a key that is its unique identifier in 293 // the bucket. Each object in a bucket has exactly one key. The prefix must end 294 // with a forward slash (/). 295 KeyPrefix *string 296 297 noSmithyDocumentSerde 298} 299 300// Contains information about the data store that you manage. 301type CustomerManagedDatastoreS3StorageSummary struct { 302 303 // The name of the Amazon S3 bucket where your data is stored. 304 Bucket *string 305 306 // (Optional) The prefix used to create the keys of the data store data objects. 307 // Each object in an Amazon S3 bucket has a key that is its unique identifier in 308 // the bucket. Each object in a bucket has exactly one key. The prefix must end 309 // with a forward slash (/). 310 KeyPrefix *string 311 312 // The ARN of the role that grants IoT Analytics permission to interact with your 313 // Amazon S3 resources. 314 RoleArn *string 315 316 noSmithyDocumentSerde 317} 318 319// Information about a dataset. 320type Dataset struct { 321 322 // The DatasetAction objects that automatically create the dataset contents. 323 Actions []DatasetAction 324 325 // The ARN of the dataset. 326 Arn *string 327 328 // When dataset contents are created they are delivered to destinations specified 329 // here. 330 ContentDeliveryRules []DatasetContentDeliveryRule 331 332 // When the dataset was created. 333 CreationTime *time.Time 334 335 // The last time the dataset was updated. 336 LastUpdateTime *time.Time 337 338 // A list of data rules that send notifications to CloudWatch, when data arrives 339 // late. To specify lateDataRules, the dataset must use a DeltaTimer 340 // (https://docs.aws.amazon.com/iotanalytics/latest/APIReference/API_DeltaTime.html) 341 // filter. 342 LateDataRules []LateDataRule 343 344 // The name of the dataset. 345 Name *string 346 347 // Optional. How long, in days, message data is kept for the dataset. 348 RetentionPeriod *RetentionPeriod 349 350 // The status of the dataset. 351 Status DatasetStatus 352 353 // The DatasetTrigger objects that specify when the dataset is automatically 354 // updated. 355 Triggers []DatasetTrigger 356 357 // Optional. How many versions of dataset contents are kept. If not specified or 358 // set to null, only the latest version plus the latest succeeded version (if they 359 // are different) are kept for the time period specified by the retentionPeriod 360 // parameter. For more information, see Keeping Multiple Versions of IoT Analytics 361 // datasets 362 // (https://docs.aws.amazon.com/iotanalytics/latest/userguide/getting-started.html#aws-iot-analytics-dataset-versions) 363 // in the IoT Analytics User Guide. 364 VersioningConfiguration *VersioningConfiguration 365 366 noSmithyDocumentSerde 367} 368 369// A DatasetAction object that specifies how dataset contents are automatically 370// created. 371type DatasetAction struct { 372 373 // The name of the dataset action by which dataset contents are automatically 374 // created. 375 ActionName *string 376 377 // Information that allows the system to run a containerized application to create 378 // the dataset contents. The application must be in a Docker container along with 379 // any required support libraries. 380 ContainerAction *ContainerDatasetAction 381 382 // An SqlQueryDatasetAction object that uses an SQL query to automatically create 383 // dataset contents. 384 QueryAction *SqlQueryDatasetAction 385 386 noSmithyDocumentSerde 387} 388 389// Information about the action that automatically creates the dataset's contents. 390type DatasetActionSummary struct { 391 392 // The name of the action that automatically creates the dataset's contents. 393 ActionName *string 394 395 // The type of action by which the dataset's contents are automatically created. 396 ActionType DatasetActionType 397 398 noSmithyDocumentSerde 399} 400 401// The destination to which dataset contents are delivered. 402type DatasetContentDeliveryDestination struct { 403 404 // Configuration information for delivery of dataset contents to IoT Events. 405 IotEventsDestinationConfiguration *IotEventsDestinationConfiguration 406 407 // Configuration information for delivery of dataset contents to Amazon S3. 408 S3DestinationConfiguration *S3DestinationConfiguration 409 410 noSmithyDocumentSerde 411} 412 413// When dataset contents are created, they are delivered to destination specified 414// here. 415type DatasetContentDeliveryRule struct { 416 417 // The destination to which dataset contents are delivered. 418 // 419 // This member is required. 420 Destination *DatasetContentDeliveryDestination 421 422 // The name of the dataset content delivery rules entry. 423 EntryName *string 424 425 noSmithyDocumentSerde 426} 427 428// The state of the dataset contents and the reason they are in this state. 429type DatasetContentStatus struct { 430 431 // The reason the dataset contents are in this state. 432 Reason *string 433 434 // The state of the dataset contents. Can be one of READY, CREATING, SUCCEEDED, or 435 // FAILED. 436 State DatasetContentState 437 438 noSmithyDocumentSerde 439} 440 441// Summary information about dataset contents. 442type DatasetContentSummary struct { 443 444 // The time the dataset content status was updated to SUCCEEDED or FAILED. 445 CompletionTime *time.Time 446 447 // The actual time the creation of the dataset contents was started. 448 CreationTime *time.Time 449 450 // The time the creation of the dataset contents was scheduled to start. 451 ScheduleTime *time.Time 452 453 // The status of the dataset contents. 454 Status *DatasetContentStatus 455 456 // The version of the dataset contents. 457 Version *string 458 459 noSmithyDocumentSerde 460} 461 462// The dataset whose latest contents are used as input to the notebook or 463// application. 464type DatasetContentVersionValue struct { 465 466 // The name of the dataset whose latest contents are used as input to the notebook 467 // or application. 468 // 469 // This member is required. 470 DatasetName *string 471 472 noSmithyDocumentSerde 473} 474 475// The reference to a dataset entry. 476type DatasetEntry struct { 477 478 // The presigned URI of the dataset item. 479 DataURI *string 480 481 // The name of the dataset item. 482 EntryName *string 483 484 noSmithyDocumentSerde 485} 486 487// A summary of information about a dataset. 488type DatasetSummary struct { 489 490 // A list of DataActionSummary objects. 491 Actions []DatasetActionSummary 492 493 // The time the dataset was created. 494 CreationTime *time.Time 495 496 // The name of the dataset. 497 DatasetName *string 498 499 // The last time the dataset was updated. 500 LastUpdateTime *time.Time 501 502 // The status of the dataset. 503 Status DatasetStatus 504 505 // A list of triggers. A trigger causes dataset content to be populated at a 506 // specified time interval or when another dataset is populated. The list of 507 // triggers can be empty or contain up to five DataSetTrigger objects 508 Triggers []DatasetTrigger 509 510 noSmithyDocumentSerde 511} 512 513// The DatasetTrigger that specifies when the dataset is automatically updated. 514type DatasetTrigger struct { 515 516 // The dataset whose content creation triggers the creation of this dataset's 517 // contents. 518 Dataset *TriggeringDataset 519 520 // The Schedule when the trigger is initiated. 521 Schedule *Schedule 522 523 noSmithyDocumentSerde 524} 525 526// Information about a data store. 527type Datastore struct { 528 529 // The ARN of the data store. 530 Arn *string 531 532 // When the data store was created. 533 CreationTime *time.Time 534 535 // Contains information about the partition dimensions in a data store. 536 DatastorePartitions *DatastorePartitions 537 538 // Contains the configuration information of file formats. IoT Analytics data 539 // stores support JSON and Parquet (https://parquet.apache.org/). The default file 540 // format is JSON. You can specify only one format. You can't change the file 541 // format after you create the data store. 542 FileFormatConfiguration *FileFormatConfiguration 543 544 // The last time when a new message arrived in the data store. IoT Analytics 545 // updates this value at most once per minute for Amazon Simple Storage Service one 546 // data store. Hence, the lastMessageArrivalTime value is an approximation. This 547 // feature only applies to messages that arrived in the data store after October 548 // 23, 2020. 549 LastMessageArrivalTime *time.Time 550 551 // The last time the data store was updated. 552 LastUpdateTime *time.Time 553 554 // The name of the data store. 555 Name *string 556 557 // How long, in days, message data is kept for the data store. When 558 // customerManagedS3 storage is selected, this parameter is ignored. 559 RetentionPeriod *RetentionPeriod 560 561 // The status of a data store: CREATING The data store is being created. ACTIVE The 562 // data store has been created and can be used. DELETING The data store is being 563 // deleted. 564 Status DatastoreStatus 565 566 // Where data in a data store is stored.. You can choose serviceManagedS3 storage, 567 // customerManagedS3 storage, or iotSiteWiseMultiLayerStorage storage. The default 568 // is serviceManagedS3. You can't change the choice of Amazon S3 storage after your 569 // data store is created. 570 Storage DatastoreStorage 571 572 noSmithyDocumentSerde 573} 574 575// The datastore activity that specifies where to store the processed data. 576type DatastoreActivity struct { 577 578 // The name of the data store where processed messages are stored. 579 // 580 // This member is required. 581 DatastoreName *string 582 583 // The name of the datastore activity. 584 // 585 // This member is required. 586 Name *string 587 588 noSmithyDocumentSerde 589} 590 591// Used to store data used by IoT SiteWise in an Amazon S3 bucket that you manage. 592// You can't change the choice of Amazon S3 storage after your data store is 593// created. 594type DatastoreIotSiteWiseMultiLayerStorage struct { 595 596 // Used to store data used by IoT SiteWise in an Amazon S3 bucket that you manage. 597 // 598 // This member is required. 599 CustomerManagedS3Storage *IotSiteWiseCustomerManagedDatastoreS3Storage 600 601 noSmithyDocumentSerde 602} 603 604// Contains information about the data store that you manage, which stores data 605// used by IoT SiteWise. 606type DatastoreIotSiteWiseMultiLayerStorageSummary struct { 607 608 // Used to store data used by IoT SiteWise in an Amazon S3 bucket that you manage. 609 CustomerManagedS3Storage *IotSiteWiseCustomerManagedDatastoreS3StorageSummary 610 611 noSmithyDocumentSerde 612} 613 614// A single dimension to partition a data store. The dimension must be an 615// AttributePartition or a TimestampPartition. 616type DatastorePartition struct { 617 618 // A partition dimension defined by an attributeName. 619 AttributePartition *Partition 620 621 // A partition dimension defined by a timestamp attribute. 622 TimestampPartition *TimestampPartition 623 624 noSmithyDocumentSerde 625} 626 627// Contains information about the partition dimensions in a data store. 628type DatastorePartitions struct { 629 630 // A list of partition dimensions in a data store. 631 Partitions []DatastorePartition 632 633 noSmithyDocumentSerde 634} 635 636// Statistical information about the data store. 637type DatastoreStatistics struct { 638 639 // The estimated size of the data store. 640 Size *EstimatedResourceSize 641 642 noSmithyDocumentSerde 643} 644 645// Where data in a data store is stored.. You can choose serviceManagedS3 storage, 646// customerManagedS3 storage, or iotSiteWiseMultiLayerStorage storage. The default 647// is serviceManagedS3. You can't change the choice of Amazon S3 storage after your 648// data store is created. 649// 650// The following types satisfy this interface: 651// DatastoreStorageMemberServiceManagedS3 652// DatastoreStorageMemberCustomerManagedS3 653// DatastoreStorageMemberIotSiteWiseMultiLayerStorage 654type DatastoreStorage interface { 655 isDatastoreStorage() 656} 657 658// Used to store data in an Amazon S3 bucket managed by IoT Analytics. You can't 659// change the choice of Amazon S3 storage after your data store is created. 660type DatastoreStorageMemberServiceManagedS3 struct { 661 Value ServiceManagedDatastoreS3Storage 662 663 noSmithyDocumentSerde 664} 665 666func (*DatastoreStorageMemberServiceManagedS3) isDatastoreStorage() {} 667 668// S3-customer-managed; When you choose customer-managed storage, the 669// retentionPeriod parameter is ignored. You can't change the choice of Amazon S3 670// storage after your data store is created. 671type DatastoreStorageMemberCustomerManagedS3 struct { 672 Value CustomerManagedDatastoreS3Storage 673 674 noSmithyDocumentSerde 675} 676 677func (*DatastoreStorageMemberCustomerManagedS3) isDatastoreStorage() {} 678 679// Used to store data used by IoT SiteWise in an Amazon S3 bucket that you manage. 680// You can't change the choice of Amazon S3 storage after your data store is 681// created. 682type DatastoreStorageMemberIotSiteWiseMultiLayerStorage struct { 683 Value DatastoreIotSiteWiseMultiLayerStorage 684 685 noSmithyDocumentSerde 686} 687 688func (*DatastoreStorageMemberIotSiteWiseMultiLayerStorage) isDatastoreStorage() {} 689 690// Contains information about your data store. 691type DatastoreStorageSummary struct { 692 693 // Used to store data in an Amazon S3 bucket managed by IoT Analytics. 694 CustomerManagedS3 *CustomerManagedDatastoreS3StorageSummary 695 696 // Used to store data used by IoT SiteWise in an Amazon S3 bucket that you manage. 697 IotSiteWiseMultiLayerStorage *DatastoreIotSiteWiseMultiLayerStorageSummary 698 699 // Used to store data in an Amazon S3 bucket managed by IoT Analytics. 700 ServiceManagedS3 *ServiceManagedDatastoreS3StorageSummary 701 702 noSmithyDocumentSerde 703} 704 705// A summary of information about a data store. 706type DatastoreSummary struct { 707 708 // When the data store was created. 709 CreationTime *time.Time 710 711 // The name of the data store. 712 DatastoreName *string 713 714 // Contains information about the partition dimensions in a data store. 715 DatastorePartitions *DatastorePartitions 716 717 // Where data in a data store is stored. 718 DatastoreStorage *DatastoreStorageSummary 719 720 // The file format of the data in the data store. 721 FileFormatType FileFormatType 722 723 // The last time when a new message arrived in the data store. IoT Analytics 724 // updates this value at most once per minute for Amazon Simple Storage Service one 725 // data store. Hence, the lastMessageArrivalTime value is an approximation. This 726 // feature only applies to messages that arrived in the data store after October 727 // 23, 2020. 728 LastMessageArrivalTime *time.Time 729 730 // The last time the data store was updated. 731 LastUpdateTime *time.Time 732 733 // The status of the data store. 734 Status DatastoreStatus 735 736 noSmithyDocumentSerde 737} 738 739// Used to limit data to that which has arrived since the last execution of the 740// action. 741type DeltaTime struct { 742 743 // The number of seconds of estimated in-flight lag time of message data. When you 744 // create dataset contents using message data from a specified timeframe, some 745 // message data might still be in flight when processing begins, and so do not 746 // arrive in time to be processed. Use this field to make allowances for the in 747 // flight time of your message data, so that data not processed from a previous 748 // timeframe is included with the next timeframe. Otherwise, missed message data 749 // would be excluded from processing during the next timeframe too, because its 750 // timestamp places it within the previous timeframe. 751 // 752 // This member is required. 753 OffsetSeconds *int32 754 755 // An expression by which the time of the message data might be determined. This 756 // can be the name of a timestamp field or a SQL expression that is used to derive 757 // the time the message data was generated. 758 // 759 // This member is required. 760 TimeExpression *string 761 762 noSmithyDocumentSerde 763} 764 765// A structure that contains the configuration information of a delta time session 766// window. DeltaTime 767// (https://docs.aws.amazon.com/iotanalytics/latest/APIReference/API_DeltaTime.html) 768// specifies a time interval. You can use DeltaTime to create dataset contents with 769// data that has arrived in the data store since the last execution. For an example 770// of DeltaTime, see Creating a SQL dataset with a delta window (CLI) 771// (https://docs.aws.amazon.com/iotanalytics/latest/userguide/automate-create-dataset.html#automate-example6) 772// in the IoT Analytics User Guide. 773type DeltaTimeSessionWindowConfiguration struct { 774 775 // A time interval. You can use timeoutInMinutes so that IoT Analytics can batch up 776 // late data notifications that have been generated since the last execution. IoT 777 // Analytics sends one batch of notifications to Amazon CloudWatch Events at one 778 // time. For more information about how to write a timestamp expression, see Date 779 // and Time Functions and Operators 780 // (https://prestodb.io/docs/0.172/functions/datetime.html), in the Presto 0.172 781 // Documentation. 782 // 783 // This member is required. 784 TimeoutInMinutes *int32 785 786 noSmithyDocumentSerde 787} 788 789// An activity that adds data from the IoT device registry to your message. 790type DeviceRegistryEnrichActivity struct { 791 792 // The name of the attribute that is added to the message. 793 // 794 // This member is required. 795 Attribute *string 796 797 // The name of the deviceRegistryEnrich activity. 798 // 799 // This member is required. 800 Name *string 801 802 // The ARN of the role that allows access to the device's registry information. 803 // 804 // This member is required. 805 RoleArn *string 806 807 // The name of the IoT device whose registry information is added to the message. 808 // 809 // This member is required. 810 ThingName *string 811 812 // The next activity in the pipeline. 813 Next *string 814 815 noSmithyDocumentSerde 816} 817 818// An activity that adds information from the IoT Device Shadow service to a 819// message. 820type DeviceShadowEnrichActivity struct { 821 822 // The name of the attribute that is added to the message. 823 // 824 // This member is required. 825 Attribute *string 826 827 // The name of the deviceShadowEnrich activity. 828 // 829 // This member is required. 830 Name *string 831 832 // The ARN of the role that allows access to the device's shadow. 833 // 834 // This member is required. 835 RoleArn *string 836 837 // The name of the IoT device whose shadow information is added to the message. 838 // 839 // This member is required. 840 ThingName *string 841 842 // The next activity in the pipeline. 843 Next *string 844 845 noSmithyDocumentSerde 846} 847 848// The estimated size of the resource. 849type EstimatedResourceSize struct { 850 851 // The time when the estimate of the size of the resource was made. 852 EstimatedOn *time.Time 853 854 // The estimated size of the resource, in bytes. 855 EstimatedSizeInBytes *float64 856 857 noSmithyDocumentSerde 858} 859 860// Contains the configuration information of file formats. IoT Analytics data 861// stores support JSON and Parquet (https://parquet.apache.org/). The default file 862// format is JSON. You can specify only one format. You can't change the file 863// format after you create the data store. 864type FileFormatConfiguration struct { 865 866 // Contains the configuration information of the JSON format. 867 JsonConfiguration *JsonConfiguration 868 869 // Contains the configuration information of the Parquet format. 870 ParquetConfiguration *ParquetConfiguration 871 872 noSmithyDocumentSerde 873} 874 875// An activity that filters a message based on its attributes. 876type FilterActivity struct { 877 878 // An expression that looks like a SQL WHERE clause that must return a Boolean 879 // value. Messages that satisfy the condition are passed to the next activity. 880 // 881 // This member is required. 882 Filter *string 883 884 // The name of the filter activity. 885 // 886 // This member is required. 887 Name *string 888 889 // The next activity in the pipeline. 890 Next *string 891 892 noSmithyDocumentSerde 893} 894 895// Configuration information for coordination with Glue, a fully managed extract, 896// transform and load (ETL) service. 897type GlueConfiguration struct { 898 899 // The name of the database in your Glue Data Catalog in which the table is 900 // located. An Glue Data Catalog database contains metadata tables. 901 // 902 // This member is required. 903 DatabaseName *string 904 905 // The name of the table in your Glue Data Catalog that is used to perform the ETL 906 // operations. An Glue Data Catalog table contains partitioned data and 907 // descriptions of data sources and targets. 908 // 909 // This member is required. 910 TableName *string 911 912 noSmithyDocumentSerde 913} 914 915// Configuration information for delivery of dataset contents to IoT Events. 916type IotEventsDestinationConfiguration struct { 917 918 // The name of the IoT Events input to which dataset contents are delivered. 919 // 920 // This member is required. 921 InputName *string 922 923 // The ARN of the role that grants IoT Analytics permission to deliver dataset 924 // contents to an IoT Events input. 925 // 926 // This member is required. 927 RoleArn *string 928 929 noSmithyDocumentSerde 930} 931 932// Used to store data used by IoT SiteWise in an Amazon S3 bucket that you manage. 933// You can't change the choice of Amazon S3 storage after your data store is 934// created. 935type IotSiteWiseCustomerManagedDatastoreS3Storage struct { 936 937 // The name of the Amazon S3 bucket where your data is stored. 938 // 939 // This member is required. 940 Bucket *string 941 942 // (Optional) The prefix used to create the keys of the data store data objects. 943 // Each object in an Amazon S3 bucket has a key that is its unique identifier in 944 // the bucket. Each object in a bucket has exactly one key. The prefix must end 945 // with a forward slash (/). 946 KeyPrefix *string 947 948 noSmithyDocumentSerde 949} 950 951// Contains information about the data store that you manage, which stores data 952// used by IoT SiteWise. 953type IotSiteWiseCustomerManagedDatastoreS3StorageSummary struct { 954 955 // The name of the Amazon S3 bucket where your data is stored. 956 Bucket *string 957 958 // (Optional) The prefix used to create the keys of the data store data objects. 959 // Each object in an Amazon S3 bucket has a key that is its unique identifier in 960 // the bucket. Each object in a bucket has exactly one key. The prefix must end 961 // with a forward slash (/). 962 KeyPrefix *string 963 964 noSmithyDocumentSerde 965} 966 967// Contains the configuration information of the JSON format. 968type JsonConfiguration struct { 969 noSmithyDocumentSerde 970} 971 972// An activity that runs a Lambda function to modify the message. 973type LambdaActivity struct { 974 975 // The number of messages passed to the Lambda function for processing. The Lambda 976 // function must be able to process all of these messages within five minutes, 977 // which is the maximum timeout duration for Lambda functions. 978 // 979 // This member is required. 980 BatchSize *int32 981 982 // The name of the Lambda function that is run on the message. 983 // 984 // This member is required. 985 LambdaName *string 986 987 // The name of the lambda activity. 988 // 989 // This member is required. 990 Name *string 991 992 // The next activity in the pipeline. 993 Next *string 994 995 noSmithyDocumentSerde 996} 997 998// A structure that contains the name and configuration information of a late data 999// rule. 1000type LateDataRule struct { 1001 1002 // The information needed to configure the late data rule. 1003 // 1004 // This member is required. 1005 RuleConfiguration *LateDataRuleConfiguration 1006 1007 // The name of the late data rule. 1008 RuleName *string 1009 1010 noSmithyDocumentSerde 1011} 1012 1013// The information needed to configure a delta time session window. 1014type LateDataRuleConfiguration struct { 1015 1016 // The information needed to configure a delta time session window. 1017 DeltaTimeSessionWindowConfiguration *DeltaTimeSessionWindowConfiguration 1018 1019 noSmithyDocumentSerde 1020} 1021 1022// Information about logging options. 1023type LoggingOptions struct { 1024 1025 // If true, logging is enabled for IoT Analytics. 1026 // 1027 // This member is required. 1028 Enabled bool 1029 1030 // The logging level. Currently, only ERROR is supported. 1031 // 1032 // This member is required. 1033 Level LoggingLevel 1034 1035 // The ARN of the role that grants permission to IoT Analytics to perform logging. 1036 // 1037 // This member is required. 1038 RoleArn *string 1039 1040 noSmithyDocumentSerde 1041} 1042 1043// An activity that computes an arithmetic expression using the message's 1044// attributes. 1045type MathActivity struct { 1046 1047 // The name of the attribute that contains the result of the math operation. 1048 // 1049 // This member is required. 1050 Attribute *string 1051 1052 // An expression that uses one or more existing attributes and must return an 1053 // integer value. 1054 // 1055 // This member is required. 1056 Math *string 1057 1058 // The name of the math activity. 1059 // 1060 // This member is required. 1061 Name *string 1062 1063 // The next activity in the pipeline. 1064 Next *string 1065 1066 noSmithyDocumentSerde 1067} 1068 1069// Information about a message. 1070type Message struct { 1071 1072 // The ID you want to assign to the message. Each messageId must be unique within 1073 // each batch sent. 1074 // 1075 // This member is required. 1076 MessageId *string 1077 1078 // The payload of the message. This can be a JSON string or a base64-encoded string 1079 // representing binary data, in which case you must decode it by means of a 1080 // pipeline activity. 1081 // 1082 // This member is required. 1083 Payload []byte 1084 1085 noSmithyDocumentSerde 1086} 1087 1088// The value of the variable as a structure that specifies an output file URI. 1089type OutputFileUriValue struct { 1090 1091 // The URI of the location where dataset contents are stored, usually the URI of a 1092 // file in an S3 bucket. 1093 // 1094 // This member is required. 1095 FileName *string 1096 1097 noSmithyDocumentSerde 1098} 1099 1100// Contains the configuration information of the Parquet format. 1101type ParquetConfiguration struct { 1102 1103 // Information needed to define a schema. 1104 SchemaDefinition *SchemaDefinition 1105 1106 noSmithyDocumentSerde 1107} 1108 1109// A partition dimension defined by an attribute. 1110type Partition struct { 1111 1112 // The name of the attribute that defines a partition dimension. 1113 // 1114 // This member is required. 1115 AttributeName *string 1116 1117 noSmithyDocumentSerde 1118} 1119 1120// Contains information about a pipeline. 1121type Pipeline struct { 1122 1123 // The activities that perform transformations on the messages. 1124 Activities []PipelineActivity 1125 1126 // The ARN of the pipeline. 1127 Arn *string 1128 1129 // When the pipeline was created. 1130 CreationTime *time.Time 1131 1132 // The last time the pipeline was updated. 1133 LastUpdateTime *time.Time 1134 1135 // The name of the pipeline. 1136 Name *string 1137 1138 // A summary of information about the pipeline reprocessing. 1139 ReprocessingSummaries []ReprocessingSummary 1140 1141 noSmithyDocumentSerde 1142} 1143 1144// An activity that performs a transformation on a message. 1145type PipelineActivity struct { 1146 1147 // Adds other attributes based on existing attributes in the message. 1148 AddAttributes *AddAttributesActivity 1149 1150 // Determines the source of the messages to be processed. 1151 Channel *ChannelActivity 1152 1153 // Specifies where to store the processed message data. 1154 Datastore *DatastoreActivity 1155 1156 // Adds data from the IoT device registry to your message. 1157 DeviceRegistryEnrich *DeviceRegistryEnrichActivity 1158 1159 // Adds information from the IoT Device Shadow service to a message. 1160 DeviceShadowEnrich *DeviceShadowEnrichActivity 1161 1162 // Filters a message based on its attributes. 1163 Filter *FilterActivity 1164 1165 // Runs a Lambda function to modify the message. 1166 Lambda *LambdaActivity 1167 1168 // Computes an arithmetic expression using the message's attributes and adds it to 1169 // the message. 1170 Math *MathActivity 1171 1172 // Removes attributes from a message. 1173 RemoveAttributes *RemoveAttributesActivity 1174 1175 // Used to create a new message using only the specified attributes from the 1176 // original message. 1177 SelectAttributes *SelectAttributesActivity 1178 1179 noSmithyDocumentSerde 1180} 1181 1182// A summary of information about a pipeline. 1183type PipelineSummary struct { 1184 1185 // When the pipeline was created. 1186 CreationTime *time.Time 1187 1188 // When the pipeline was last updated. 1189 LastUpdateTime *time.Time 1190 1191 // The name of the pipeline. 1192 PipelineName *string 1193 1194 // A summary of information about the pipeline reprocessing. 1195 ReprocessingSummaries []ReprocessingSummary 1196 1197 noSmithyDocumentSerde 1198} 1199 1200// Information that is used to filter message data, to segregate it according to 1201// the timeframe in which it arrives. 1202type QueryFilter struct { 1203 1204 // Used to limit data to that which has arrived since the last execution of the 1205 // action. 1206 DeltaTime *DeltaTime 1207 1208 noSmithyDocumentSerde 1209} 1210 1211// An activity that removes attributes from a message. 1212type RemoveAttributesActivity struct { 1213 1214 // A list of 1-50 attributes to remove from the message. 1215 // 1216 // This member is required. 1217 Attributes []string 1218 1219 // The name of the removeAttributes activity. 1220 // 1221 // This member is required. 1222 Name *string 1223 1224 // The next activity in the pipeline. 1225 Next *string 1226 1227 noSmithyDocumentSerde 1228} 1229 1230// Information about pipeline reprocessing. 1231type ReprocessingSummary struct { 1232 1233 // The time the pipeline reprocessing was created. 1234 CreationTime *time.Time 1235 1236 // The reprocessingId returned by StartPipelineReprocessing. 1237 Id *string 1238 1239 // The status of the pipeline reprocessing. 1240 Status ReprocessingStatus 1241 1242 noSmithyDocumentSerde 1243} 1244 1245// The configuration of the resource used to execute the containerAction. 1246type ResourceConfiguration struct { 1247 1248 // The type of the compute resource used to execute the containerAction. Possible 1249 // values are: ACU_1 (vCPU=4, memory=16 GiB) or ACU_2 (vCPU=8, memory=32 GiB). 1250 // 1251 // This member is required. 1252 ComputeType ComputeType 1253 1254 // The size, in GB, of the persistent storage available to the resource instance 1255 // used to execute the containerAction (min: 1, max: 50). 1256 // 1257 // This member is required. 1258 VolumeSizeInGB int32 1259 1260 noSmithyDocumentSerde 1261} 1262 1263// How long, in days, message data is kept. 1264type RetentionPeriod struct { 1265 1266 // The number of days that message data is kept. The unlimited parameter must be 1267 // false. 1268 NumberOfDays *int32 1269 1270 // If true, message data is kept indefinitely. 1271 Unlimited bool 1272 1273 noSmithyDocumentSerde 1274} 1275 1276// Configuration information for delivery of dataset contents to Amazon Simple 1277// Storage Service (Amazon S3). 1278type S3DestinationConfiguration struct { 1279 1280 // The name of the S3 bucket to which dataset contents are delivered. 1281 // 1282 // This member is required. 1283 Bucket *string 1284 1285 // The key of the dataset contents object in an S3 bucket. Each object has a key 1286 // that is a unique identifier. Each object has exactly one key. You can create a 1287 // unique key with the following options: 1288 // 1289 // * Use !{iotanalytics:scheduleTime} to 1290 // insert the time of a scheduled SQL query run. 1291 // 1292 // * Use !{iotanalytics:versionId} 1293 // to insert a unique hash that identifies a dataset content. 1294 // 1295 // * Use 1296 // !{iotanalytics:creationTime} to insert the creation time of a dataset 1297 // content. 1298 // 1299 // The following example creates a unique key for a CSV file: 1300 // dataset/mydataset/!{iotanalytics:scheduleTime}/!{iotanalytics:versionId}.csv If 1301 // you don't use !{iotanalytics:versionId} to specify the key, you might get 1302 // duplicate keys. For example, you might have two dataset contents with the same 1303 // scheduleTime but different versionIds. This means that one dataset content 1304 // overwrites the other. 1305 // 1306 // This member is required. 1307 Key *string 1308 1309 // The ARN of the role that grants IoT Analytics permission to interact with your 1310 // Amazon S3 and Glue resources. 1311 // 1312 // This member is required. 1313 RoleArn *string 1314 1315 // Configuration information for coordination with Glue, a fully managed extract, 1316 // transform and load (ETL) service. 1317 GlueConfiguration *GlueConfiguration 1318 1319 noSmithyDocumentSerde 1320} 1321 1322// The schedule for when to trigger an update. 1323type Schedule struct { 1324 1325 // The expression that defines when to trigger an update. For more information, see 1326 // Schedule Expressions for Rules 1327 // (https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html) 1328 // in the Amazon CloudWatch Events User Guide. 1329 Expression *string 1330 1331 noSmithyDocumentSerde 1332} 1333 1334// Information needed to define a schema. 1335type SchemaDefinition struct { 1336 1337 // Specifies one or more columns that store your data. Each schema can have up to 1338 // 100 columns. Each column can have up to 100 nested types. 1339 Columns []Column 1340 1341 noSmithyDocumentSerde 1342} 1343 1344// Used to create a new message using only the specified attributes from the 1345// original message. 1346type SelectAttributesActivity struct { 1347 1348 // A list of the attributes to select from the message. 1349 // 1350 // This member is required. 1351 Attributes []string 1352 1353 // The name of the selectAttributes activity. 1354 // 1355 // This member is required. 1356 Name *string 1357 1358 // The next activity in the pipeline. 1359 Next *string 1360 1361 noSmithyDocumentSerde 1362} 1363 1364// Used to store channel data in an S3 bucket managed by IoT Analytics. You can't 1365// change the choice of S3 storage after the data store is created. 1366type ServiceManagedChannelS3Storage struct { 1367 noSmithyDocumentSerde 1368} 1369 1370// Used to store channel data in an S3 bucket managed by IoT Analytics. 1371type ServiceManagedChannelS3StorageSummary struct { 1372 noSmithyDocumentSerde 1373} 1374 1375// Used to store data in an Amazon S3 bucket managed by IoT Analytics. You can't 1376// change the choice of Amazon S3 storage after your data store is created. 1377type ServiceManagedDatastoreS3Storage struct { 1378 noSmithyDocumentSerde 1379} 1380 1381// Contains information about the data store that is managed by IoT Analytics. 1382type ServiceManagedDatastoreS3StorageSummary struct { 1383 noSmithyDocumentSerde 1384} 1385 1386// The SQL query to modify the message. 1387type SqlQueryDatasetAction struct { 1388 1389 // A SQL query string. 1390 // 1391 // This member is required. 1392 SqlQuery *string 1393 1394 // Prefilters applied to message data. 1395 Filters []QueryFilter 1396 1397 noSmithyDocumentSerde 1398} 1399 1400// A set of key-value pairs that are used to manage the resource. 1401type Tag struct { 1402 1403 // The tag's key. 1404 // 1405 // This member is required. 1406 Key *string 1407 1408 // The tag's value. 1409 // 1410 // This member is required. 1411 Value *string 1412 1413 noSmithyDocumentSerde 1414} 1415 1416// A partition dimension defined by a timestamp attribute. 1417type TimestampPartition struct { 1418 1419 // The attribute name of the partition defined by a timestamp. 1420 // 1421 // This member is required. 1422 AttributeName *string 1423 1424 // The timestamp format of a partition defined by a timestamp. The default format 1425 // is seconds since epoch (January 1, 1970 at midnight UTC time). 1426 TimestampFormat *string 1427 1428 noSmithyDocumentSerde 1429} 1430 1431// Information about the dataset whose content generation triggers the new dataset 1432// content generation. 1433type TriggeringDataset struct { 1434 1435 // The name of the dataset whose content generation triggers the new dataset 1436 // content generation. 1437 // 1438 // This member is required. 1439 Name *string 1440 1441 noSmithyDocumentSerde 1442} 1443 1444// An instance of a variable to be passed to the containerAction execution. Each 1445// variable must have a name and a value given by one of stringValue, 1446// datasetContentVersionValue, or outputFileUriValue. 1447type Variable struct { 1448 1449 // The name of the variable. 1450 // 1451 // This member is required. 1452 Name *string 1453 1454 // The value of the variable as a structure that specifies a dataset content 1455 // version. 1456 DatasetContentVersionValue *DatasetContentVersionValue 1457 1458 // The value of the variable as a double (numeric). 1459 DoubleValue float64 1460 1461 // The value of the variable as a structure that specifies an output file URI. 1462 OutputFileUriValue *OutputFileUriValue 1463 1464 // The value of the variable as a string. 1465 StringValue *string 1466 1467 noSmithyDocumentSerde 1468} 1469 1470// Information about the versioning of dataset contents. 1471type VersioningConfiguration struct { 1472 1473 // How many versions of dataset contents are kept. The unlimited parameter must be 1474 // false. 1475 MaxVersions *int32 1476 1477 // If true, unlimited versions of dataset contents are kept. 1478 Unlimited bool 1479 1480 noSmithyDocumentSerde 1481} 1482 1483type noSmithyDocumentSerde = smithydocument.NoSerde 1484 1485// UnknownUnionMember is returned when a union member is returned over the wire, 1486// but has an unknown tag. 1487type UnknownUnionMember struct { 1488 Tag string 1489 Value []byte 1490 1491 noSmithyDocumentSerde 1492} 1493 1494func (*UnknownUnionMember) isDatastoreStorage() {} 1495