1// Code generated by smithy-go-codegen DO NOT EDIT. 2 3package types 4 5import ( 6 "time" 7) 8 9// Limits that are related to concurrency and storage. All file and storage sizes 10// are in bytes. 11type AccountLimit struct { 12 13 // The maximum size of a function's deployment package and layers when they're 14 // extracted. 15 CodeSizeUnzipped int64 16 17 // The maximum size of a deployment package when it's uploaded directly to AWS 18 // Lambda. Use Amazon S3 for larger files. 19 CodeSizeZipped int64 20 21 // The maximum number of simultaneous function executions. 22 ConcurrentExecutions int32 23 24 // The amount of storage space that you can use for all deployment packages and 25 // layer archives. 26 TotalCodeSize int64 27 28 // The maximum number of simultaneous function executions, minus the capacity 29 // that's reserved for individual functions with PutFunctionConcurrency. 30 UnreservedConcurrentExecutions *int32 31} 32 33// The number of functions and amount of storage in use. 34type AccountUsage struct { 35 36 // The number of Lambda functions. 37 FunctionCount int64 38 39 // The amount of storage space, in bytes, that's being used by deployment packages 40 // and layer archives. 41 TotalCodeSize int64 42} 43 44// Provides configuration information about a Lambda function alias 45// (https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html). 46type AliasConfiguration struct { 47 48 // The Amazon Resource Name (ARN) of the alias. 49 AliasArn *string 50 51 // A description of the alias. 52 Description *string 53 54 // The function version that the alias invokes. 55 FunctionVersion *string 56 57 // The name of the alias. 58 Name *string 59 60 // A unique identifier that changes when you update the alias. 61 RevisionId *string 62 63 // The routing configuration 64 // (https://docs.aws.amazon.com/lambda/latest/dg/lambda-traffic-shifting-using-aliases.html) 65 // of the alias. 66 RoutingConfig *AliasRoutingConfiguration 67} 68 69// The traffic-shifting 70// (https://docs.aws.amazon.com/lambda/latest/dg/lambda-traffic-shifting-using-aliases.html) 71// configuration of a Lambda function alias. 72type AliasRoutingConfiguration struct { 73 74 // The second version, and the percentage of traffic that's routed to it. 75 AdditionalVersionWeights map[string]float64 76} 77 78// List of signing profiles that can sign a code package. 79type AllowedPublishers struct { 80 81 // The Amazon Resource Name (ARN) for each of the signing profiles. A signing 82 // profile defines a trusted user who can sign a code package. 83 // 84 // This member is required. 85 SigningProfileVersionArns []string 86} 87 88// Details about a Code signing configuration. 89type CodeSigningConfig struct { 90 91 // List of allowed publishers. 92 // 93 // This member is required. 94 AllowedPublishers *AllowedPublishers 95 96 // The Amazon Resource Name (ARN) of the Code signing configuration. 97 // 98 // This member is required. 99 CodeSigningConfigArn *string 100 101 // Unique identifer for the Code signing configuration. 102 // 103 // This member is required. 104 CodeSigningConfigId *string 105 106 // The code signing policy controls the validation failure action for signature 107 // mismatch or expiry. 108 // 109 // This member is required. 110 CodeSigningPolicies *CodeSigningPolicies 111 112 // The date and time that the Code signing configuration was last modified, in 113 // ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD). 114 // 115 // This member is required. 116 LastModified *string 117 118 // Code signing configuration description. 119 Description *string 120} 121 122// Code signing configuration policies specifies the validation failure action for 123// signature mismatch or expiry. 124type CodeSigningPolicies struct { 125 126 // Code signing configuration policy for deployment validation failure. If you set 127 // the policy to Enforce, Lambda blocks the deployment request if signature 128 // validation checks fail. If you set the policy to Warn, Lambda allows the 129 // deployment and creates a CloudWatch log. Default value: Warn 130 UntrustedArtifactOnDeployment CodeSigningPolicy 131} 132 133type Concurrency struct { 134 135 // The number of concurrent executions that are reserved for this function. For 136 // more information, see Managing Concurrency 137 // (https://docs.aws.amazon.com/lambda/latest/dg/concurrent-executions.html). 138 ReservedConcurrentExecutions *int32 139} 140 141// The dead-letter queue 142// (https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#dlq) for 143// failed asynchronous invocations. 144type DeadLetterConfig struct { 145 146 // The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic. 147 TargetArn *string 148} 149 150// A configuration object that specifies the destination of an event after Lambda 151// processes it. 152type DestinationConfig struct { 153 154 // The destination configuration for failed invocations. 155 OnFailure *OnFailure 156 157 // The destination configuration for successful invocations. 158 OnSuccess *OnSuccess 159} 160 161// A function's environment variable settings. 162type Environment struct { 163 164 // Environment variable key-value pairs. 165 Variables map[string]string 166} 167 168// Error messages for environment variables that couldn't be applied. 169type EnvironmentError struct { 170 171 // The error code. 172 ErrorCode *string 173 174 // The error message. 175 Message *string 176} 177 178// The results of an operation to update or read environment variables. If the 179// operation is successful, the response contains the environment variables. If it 180// failed, the response contains details about the error. 181type EnvironmentResponse struct { 182 183 // Error messages for environment variables that couldn't be applied. 184 Error *EnvironmentError 185 186 // Environment variable key-value pairs. 187 Variables map[string]string 188} 189 190// A mapping between an AWS resource and an AWS Lambda function. See 191// CreateEventSourceMapping for details. 192type EventSourceMappingConfiguration struct { 193 194 // The maximum number of items to retrieve in a single batch. 195 BatchSize *int32 196 197 // (Streams) If the function returns an error, split the batch in two and retry. 198 // The default value is false. 199 BisectBatchOnFunctionError *bool 200 201 // (Streams) An Amazon SQS queue or Amazon SNS topic destination for discarded 202 // records. 203 DestinationConfig *DestinationConfig 204 205 // The Amazon Resource Name (ARN) of the event source. 206 EventSourceArn *string 207 208 // The ARN of the Lambda function. 209 FunctionArn *string 210 211 // (Streams) A list of current response type enums applied to the event source 212 // mapping. 213 FunctionResponseTypes []FunctionResponseType 214 215 // The date that the event source mapping was last updated, or its state changed. 216 LastModified *time.Time 217 218 // The result of the last AWS Lambda invocation of your Lambda function. 219 LastProcessingResult *string 220 221 // (Streams and SQS standard queues) The maximum amount of time to gather records 222 // before invoking the function, in seconds. The default value is zero. 223 MaximumBatchingWindowInSeconds *int32 224 225 // (Streams) Discard records older than the specified age. The default value is 226 // infinite (-1). When set to infinite (-1), failed records are retried until the 227 // record expires. 228 MaximumRecordAgeInSeconds *int32 229 230 // (Streams) Discard records after the specified number of retries. The default 231 // value is infinite (-1). When set to infinite (-1), failed records are retried 232 // until the record expires. 233 MaximumRetryAttempts *int32 234 235 // (Streams) The number of batches to process from each shard concurrently. The 236 // default value is 1. 237 ParallelizationFactor *int32 238 239 // (MQ) The name of the Amazon MQ broker destination queue to consume. 240 Queues []string 241 242 // The Self-Managed Apache Kafka cluster for your event source. 243 SelfManagedEventSource *SelfManagedEventSource 244 245 // An array of the authentication protocol, or the VPC components to secure your 246 // event source. 247 SourceAccessConfigurations []SourceAccessConfiguration 248 249 // The position in a stream from which to start reading. Required for Amazon 250 // Kinesis, Amazon DynamoDB, and Amazon MSK Streams sources. AT_TIMESTAMP is only 251 // supported for Amazon Kinesis streams. 252 StartingPosition EventSourcePosition 253 254 // With StartingPosition set to AT_TIMESTAMP, the time from which to start reading. 255 StartingPositionTimestamp *time.Time 256 257 // The state of the event source mapping. It can be one of the following: Creating, 258 // Enabling, Enabled, Disabling, Disabled, Updating, or Deleting. 259 State *string 260 261 // Indicates whether the last change to the event source mapping was made by a 262 // user, or by the Lambda service. 263 StateTransitionReason *string 264 265 // The name of the Kafka topic. 266 Topics []string 267 268 // (Streams) The duration of a processing window in seconds. The range is between 1 269 // second up to 15 minutes. 270 TumblingWindowInSeconds *int32 271 272 // The identifier of the event source mapping. 273 UUID *string 274} 275 276// Details about the connection between a Lambda function and an Amazon EFS file 277// system. 278type FileSystemConfig struct { 279 280 // The Amazon Resource Name (ARN) of the Amazon EFS access point that provides 281 // access to the file system. 282 // 283 // This member is required. 284 Arn *string 285 286 // The path where the function can access the file system, starting with /mnt/. 287 // 288 // This member is required. 289 LocalMountPath *string 290} 291 292// The code for the Lambda function. You can specify either an object in Amazon S3, 293// upload a .zip file archive deployment package directly, or specify the URI of a 294// container image. 295type FunctionCode struct { 296 297 // URI of a container image in the Amazon ECR registry. 298 ImageUri *string 299 300 // An Amazon S3 bucket in the same AWS Region as your function. The bucket can be 301 // in a different AWS account. 302 S3Bucket *string 303 304 // The Amazon S3 key of the deployment package. 305 S3Key *string 306 307 // For versioned objects, the version of the deployment package object to use. 308 S3ObjectVersion *string 309 310 // The base64-encoded contents of the deployment package. AWS SDK and AWS CLI 311 // clients handle the encoding for you. 312 ZipFile []byte 313} 314 315// Details about a function's deployment package. 316type FunctionCodeLocation struct { 317 318 // URI of a container image in the Amazon ECR registry. 319 ImageUri *string 320 321 // A presigned URL that you can use to download the deployment package. 322 Location *string 323 324 // The service that's hosting the file. 325 RepositoryType *string 326 327 // The resolved URI for the image. 328 ResolvedImageUri *string 329} 330 331// Details about a function's configuration. 332type FunctionConfiguration struct { 333 334 // The SHA256 hash of the function's deployment package. 335 CodeSha256 *string 336 337 // The size of the function's deployment package, in bytes. 338 CodeSize int64 339 340 // The function's dead letter queue. 341 DeadLetterConfig *DeadLetterConfig 342 343 // The function's description. 344 Description *string 345 346 // The function's environment variables. 347 Environment *EnvironmentResponse 348 349 // Connection settings for an Amazon EFS file system. 350 FileSystemConfigs []FileSystemConfig 351 352 // The function's Amazon Resource Name (ARN). 353 FunctionArn *string 354 355 // The name of the function. 356 FunctionName *string 357 358 // The function that Lambda calls to begin executing your function. 359 Handler *string 360 361 // The function's image configuration values. 362 ImageConfigResponse *ImageConfigResponse 363 364 // The KMS key that's used to encrypt the function's environment variables. This 365 // key is only returned if you've configured a customer managed CMK. 366 KMSKeyArn *string 367 368 // The date and time that the function was last updated, in ISO-8601 format 369 // (https://www.w3.org/TR/NOTE-datetime) (YYYY-MM-DDThh:mm:ss.sTZD). 370 LastModified *string 371 372 // The status of the last update that was performed on the function. This is first 373 // set to Successful after function creation completes. 374 LastUpdateStatus LastUpdateStatus 375 376 // The reason for the last update that was performed on the function. 377 LastUpdateStatusReason *string 378 379 // The reason code for the last update that was performed on the function. 380 LastUpdateStatusReasonCode LastUpdateStatusReasonCode 381 382 // The function's layers 383 // (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html). 384 Layers []Layer 385 386 // For Lambda@Edge functions, the ARN of the master function. 387 MasterArn *string 388 389 // The amount of memory available to the function at runtime. 390 MemorySize *int32 391 392 // The type of deployment package. Set to Image for container image and set Zip for 393 // .zip file archive. 394 PackageType PackageType 395 396 // The latest updated revision of the function or alias. 397 RevisionId *string 398 399 // The function's execution role. 400 Role *string 401 402 // The runtime environment for the Lambda function. 403 Runtime Runtime 404 405 // The ARN of the signing job. 406 SigningJobArn *string 407 408 // The ARN of the signing profile version. 409 SigningProfileVersionArn *string 410 411 // The current state of the function. When the state is Inactive, you can 412 // reactivate the function by invoking it. 413 State State 414 415 // The reason for the function's current state. 416 StateReason *string 417 418 // The reason code for the function's current state. When the code is Creating, you 419 // can't invoke or modify the function. 420 StateReasonCode StateReasonCode 421 422 // The amount of time in seconds that Lambda allows a function to run before 423 // stopping it. 424 Timeout *int32 425 426 // The function's AWS X-Ray tracing configuration. 427 TracingConfig *TracingConfigResponse 428 429 // The version of the Lambda function. 430 Version *string 431 432 // The function's networking configuration. 433 VpcConfig *VpcConfigResponse 434} 435 436type FunctionEventInvokeConfig struct { 437 438 // A destination for events after they have been sent to a function for processing. 439 // Destinations 440 // 441 // * Function - The Amazon Resource Name (ARN) of a Lambda 442 // function. 443 // 444 // * Queue - The ARN of an SQS queue. 445 // 446 // * Topic - The ARN of an SNS 447 // topic. 448 // 449 // * Event Bus - The ARN of an Amazon EventBridge event bus. 450 DestinationConfig *DestinationConfig 451 452 // The Amazon Resource Name (ARN) of the function. 453 FunctionArn *string 454 455 // The date and time that the configuration was last updated. 456 LastModified *time.Time 457 458 // The maximum age of a request that Lambda sends to a function for processing. 459 MaximumEventAgeInSeconds *int32 460 461 // The maximum number of times to retry when the function returns an error. 462 MaximumRetryAttempts *int32 463} 464 465// Configuration values that override the container image Dockerfile settings. See 466// Container settings 467// (https://docs.aws.amazon.com/lambda/latest/dg/images-parms.html). 468type ImageConfig struct { 469 470 // Specifies parameters that you want to pass in with ENTRYPOINT. 471 Command []string 472 473 // Specifies the entry point to their application, which is typically the location 474 // of the runtime executable. 475 EntryPoint []string 476 477 // Specifies the working directory. 478 WorkingDirectory *string 479} 480 481// Error response to GetFunctionConfiguration. 482type ImageConfigError struct { 483 484 // Error code. 485 ErrorCode *string 486 487 // Error message. 488 Message *string 489} 490 491// Response to GetFunctionConfiguration request. 492type ImageConfigResponse struct { 493 494 // Error response to GetFunctionConfiguration. 495 Error *ImageConfigError 496 497 // Configuration values that override the container image Dockerfile. 498 ImageConfig *ImageConfig 499} 500 501// An AWS Lambda layer 502// (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html). 503type Layer struct { 504 505 // The Amazon Resource Name (ARN) of the function layer. 506 Arn *string 507 508 // The size of the layer archive in bytes. 509 CodeSize int64 510 511 // The Amazon Resource Name (ARN) of a signing job. 512 SigningJobArn *string 513 514 // The Amazon Resource Name (ARN) for a signing profile version. 515 SigningProfileVersionArn *string 516} 517 518// Details about an AWS Lambda layer 519// (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html). 520type LayersListItem struct { 521 522 // The newest version of the layer. 523 LatestMatchingVersion *LayerVersionsListItem 524 525 // The Amazon Resource Name (ARN) of the function layer. 526 LayerArn *string 527 528 // The name of the layer. 529 LayerName *string 530} 531 532// A ZIP archive that contains the contents of an AWS Lambda layer 533// (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html). You 534// can specify either an Amazon S3 location, or upload a layer archive directly. 535type LayerVersionContentInput struct { 536 537 // The Amazon S3 bucket of the layer archive. 538 S3Bucket *string 539 540 // The Amazon S3 key of the layer archive. 541 S3Key *string 542 543 // For versioned objects, the version of the layer archive object to use. 544 S3ObjectVersion *string 545 546 // The base64-encoded contents of the layer archive. AWS SDK and AWS CLI clients 547 // handle the encoding for you. 548 ZipFile []byte 549} 550 551// Details about a version of an AWS Lambda layer 552// (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html). 553type LayerVersionContentOutput struct { 554 555 // The SHA-256 hash of the layer archive. 556 CodeSha256 *string 557 558 // The size of the layer archive in bytes. 559 CodeSize int64 560 561 // A link to the layer archive in Amazon S3 that is valid for 10 minutes. 562 Location *string 563 564 // The Amazon Resource Name (ARN) of a signing job. 565 SigningJobArn *string 566 567 // The Amazon Resource Name (ARN) for a signing profile version. 568 SigningProfileVersionArn *string 569} 570 571// Details about a version of an AWS Lambda layer 572// (https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html). 573type LayerVersionsListItem struct { 574 575 // The layer's compatible runtimes. 576 CompatibleRuntimes []Runtime 577 578 // The date that the version was created, in ISO 8601 format. For example, 579 // 2018-11-27T15:10:45.123+0000. 580 CreatedDate *string 581 582 // The description of the version. 583 Description *string 584 585 // The ARN of the layer version. 586 LayerVersionArn *string 587 588 // The layer's open-source license. 589 LicenseInfo *string 590 591 // The version number. 592 Version int64 593} 594 595// A destination for events that failed processing. 596type OnFailure struct { 597 598 // The Amazon Resource Name (ARN) of the destination resource. 599 Destination *string 600} 601 602// A destination for events that were processed successfully. 603type OnSuccess struct { 604 605 // The Amazon Resource Name (ARN) of the destination resource. 606 Destination *string 607} 608 609// Details about the provisioned concurrency configuration for a function alias or 610// version. 611type ProvisionedConcurrencyConfigListItem struct { 612 613 // The amount of provisioned concurrency allocated. 614 AllocatedProvisionedConcurrentExecutions *int32 615 616 // The amount of provisioned concurrency available. 617 AvailableProvisionedConcurrentExecutions *int32 618 619 // The Amazon Resource Name (ARN) of the alias or version. 620 FunctionArn *string 621 622 // The date and time that a user last updated the configuration, in ISO 8601 format 623 // (https://www.iso.org/iso-8601-date-and-time-format.html). 624 LastModified *string 625 626 // The amount of provisioned concurrency requested. 627 RequestedProvisionedConcurrentExecutions *int32 628 629 // The status of the allocation process. 630 Status ProvisionedConcurrencyStatusEnum 631 632 // For failed allocations, the reason that provisioned concurrency could not be 633 // allocated. 634 StatusReason *string 635} 636 637// The Self-Managed Apache Kafka cluster for your event source. 638type SelfManagedEventSource struct { 639 640 // The list of bootstrap servers for your Kafka brokers in the following format: 641 // "KAFKA_BOOTSTRAP_SERVERS": ["abc.xyz.com:xxxx","abc2.xyz.com:xxxx"]. 642 Endpoints map[string][]string 643} 644 645// You can specify the authentication protocol, or the VPC components to secure 646// access to your event source. 647type SourceAccessConfiguration struct { 648 649 // The type of authentication protocol or the VPC components for your event source. 650 // For example: "Type":"SASL_SCRAM_512_AUTH". 651 // 652 // * BASIC_AUTH - (MQ) The Secrets 653 // Manager secret that stores your broker credentials. 654 // 655 // * VPC_SUBNET - The subnets 656 // associated with your VPC. Lambda connects to these subnets to fetch data from 657 // your Kafka cluster. 658 // 659 // * VPC_SECURITY_GROUP - The VPC security group used to 660 // manage access to your Kafka brokers. 661 // 662 // * SASL_SCRAM_256_AUTH - The ARN of your 663 // secret key used for SASL SCRAM-256 authentication of your Kafka brokers. 664 // 665 // * 666 // SASL_SCRAM_512_AUTH - The ARN of your secret key used for SASL SCRAM-512 667 // authentication of your Kafka brokers. 668 Type SourceAccessType 669 670 // The value for your chosen configuration in Type. For example: "URI": 671 // "arn:aws:secretsmanager:us-east-1:01234567890:secret:MyBrokerSecretName". 672 URI *string 673} 674 675// The function's AWS X-Ray tracing configuration. To sample and record incoming 676// requests, set Mode to Active. 677type TracingConfig struct { 678 679 // The tracing mode. 680 Mode TracingMode 681} 682 683// The function's AWS X-Ray tracing configuration. 684type TracingConfigResponse struct { 685 686 // The tracing mode. 687 Mode TracingMode 688} 689 690// The VPC security groups and subnets that are attached to a Lambda function. For 691// more information, see VPC Settings 692// (https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html). 693type VpcConfig struct { 694 695 // A list of VPC security groups IDs. 696 SecurityGroupIds []string 697 698 // A list of VPC subnet IDs. 699 SubnetIds []string 700} 701 702// The VPC security groups and subnets that are attached to a Lambda function. 703type VpcConfigResponse struct { 704 705 // A list of VPC security groups IDs. 706 SecurityGroupIds []string 707 708 // A list of VPC subnet IDs. 709 SubnetIds []string 710 711 // The ID of the VPC. 712 VpcId *string 713} 714