Documentation

Overview

    Package cloudtrail provides the API client, operations, and parameter types for AWS CloudTrail.

    AWS CloudTrail This is the CloudTrail API Reference. It provides descriptions of actions, data types, common parameters, and common errors for CloudTrail. CloudTrail is a web service that records AWS API calls for your AWS account and delivers log files to an Amazon S3 bucket. The recorded information includes the identity of the user, the start time of the AWS API call, the source IP address, the request parameters, and the response elements returned by the service. As an alternative to the API, you can use one of the AWS SDKs, which consist of libraries and sample code for various programming languages and platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs provide a convenient way to create programmatic access to AWSCloudTrail. For example, the SDKs take care of cryptographically signing requests, managing errors, and retrying requests automatically. For information about the AWS SDKs, including how to download and install them, see the Tools for Amazon Web Services page (http://aws.amazon.com/tools/). See the AWS CloudTrail User Guide (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) for information about the data that is included with each AWS API call listed in the log files.

    Index

    Constants

    View Source
    const ServiceAPIVersion = "2013-11-01"
    View Source
    const ServiceID = "CloudTrail"

    Variables

    This section is empty.

    Functions

    func NewDefaultEndpointResolver

    func NewDefaultEndpointResolver() *internalendpoints.Resolver

      NewDefaultEndpointResolver constructs a new service endpoint resolver

      func WithAPIOptions

      func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options)

        WithAPIOptions returns a functional option for setting the Client's APIOptions option.

        func WithEndpointResolver

        func WithEndpointResolver(v EndpointResolver) func(*Options)

          WithEndpointResolver returns a functional option for setting the Client's EndpointResolver option.

          Types

          type AddTagsInput

          type AddTagsInput struct {
          
          	// Specifies the ARN of the trail to which one or more tags will be added. The
          	// format of a trail ARN is:
          	// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
          	//
          	// This member is required.
          	ResourceId *string
          
          	// Contains a list of CloudTrail tags, up to a limit of 50
          	TagsList []types.Tag
          }

            Specifies the tags to add to a trail.

            type AddTagsOutput

            type AddTagsOutput struct {
            	// Metadata pertaining to the operation's result.
            	ResultMetadata middleware.Metadata
            }

              Returns the objects or data listed below if successful. Otherwise, returns an error.

              type Client

              type Client struct {
              	// contains filtered or unexported fields
              }

                Client provides the API client to make operations call for AWS CloudTrail.

                func New

                func New(options Options, optFns ...func(*Options)) *Client

                  New returns an initialized Client based on the functional options. Provide additional functional options to further configure the behavior of the client, such as changing the client's endpoint or adding custom middleware behavior.

                  func NewFromConfig

                  func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client

                    NewFromConfig returns a new client from the provided config.

                    func (*Client) AddTags

                    func (c *Client) AddTags(ctx context.Context, params *AddTagsInput, optFns ...func(*Options)) (*AddTagsOutput, error)

                      Adds one or more tags to a trail, up to a limit of 50. Overwrites an existing tag's value when a new value is specified for an existing tag key. Tag key names must be unique for a trail; you cannot have two keys with the same name but different values. If you specify a key without a value, the tag will be created with the specified key and a value of null. You can tag a trail that applies to all AWS Regions only from the Region in which the trail was created (also known as its home region).

                      func (*Client) CreateTrail

                      func (c *Client) CreateTrail(ctx context.Context, params *CreateTrailInput, optFns ...func(*Options)) (*CreateTrailOutput, error)

                        Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket.

                        func (*Client) DeleteTrail

                        func (c *Client) DeleteTrail(ctx context.Context, params *DeleteTrailInput, optFns ...func(*Options)) (*DeleteTrailOutput, error)

                          Deletes a trail. This operation must be called from the region in which the trail was created. DeleteTrail cannot be called on the shadow trails (replicated trails in other regions) of a trail that is enabled in all regions.

                          func (*Client) DescribeTrails

                          func (c *Client) DescribeTrails(ctx context.Context, params *DescribeTrailsInput, optFns ...func(*Options)) (*DescribeTrailsOutput, error)

                            Retrieves settings for one or more trails associated with the current region for your account.

                            func (*Client) GetEventSelectors

                            func (c *Client) GetEventSelectors(ctx context.Context, params *GetEventSelectorsInput, optFns ...func(*Options)) (*GetEventSelectorsOutput, error)

                              Describes the settings for the event selectors that you configured for your trail. The information returned for your event selectors includes the following:

                              * If your event selector includes read-only events, write-only events, or all events. This applies to both management events and data events.

                              * If your event selector includes management events.

                              * If your event selector includes data events, the Amazon S3 objects or AWS Lambda functions that you are logging for data events.

                              For more information, see Logging Data and Management Events for Trails (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-and-data-events-with-cloudtrail.html) in the AWS CloudTrail User Guide.

                              func (*Client) GetInsightSelectors

                              func (c *Client) GetInsightSelectors(ctx context.Context, params *GetInsightSelectorsInput, optFns ...func(*Options)) (*GetInsightSelectorsOutput, error)

                                Describes the settings for the Insights event selectors that you configured for your trail. GetInsightSelectors shows if CloudTrail Insights event logging is enabled on the trail, and if it is, which insight types are enabled. If you run GetInsightSelectors on a trail that does not have Insights events enabled, the operation throws the exception InsightNotEnabledException For more information, see Logging CloudTrail Insights Events for Trails (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-insights-events-with-cloudtrail.html) in the AWS CloudTrail User Guide.

                                func (*Client) GetTrail

                                func (c *Client) GetTrail(ctx context.Context, params *GetTrailInput, optFns ...func(*Options)) (*GetTrailOutput, error)

                                  Returns settings information for a specified trail.

                                  func (*Client) GetTrailStatus

                                  func (c *Client) GetTrailStatus(ctx context.Context, params *GetTrailStatusInput, optFns ...func(*Options)) (*GetTrailStatusOutput, error)

                                    Returns a JSON-formatted list of information about the specified trail. Fields include information on delivery errors, Amazon SNS and Amazon S3 errors, and start and stop logging times for each trail. This operation returns trail status from a single region. To return trail status from all regions, you must call the operation on each region.

                                    func (*Client) ListPublicKeys

                                    func (c *Client) ListPublicKeys(ctx context.Context, params *ListPublicKeysInput, optFns ...func(*Options)) (*ListPublicKeysOutput, error)

                                      Returns all public keys whose private keys were used to sign the digest files within the specified time range. The public key is needed to validate digest files that were signed with its corresponding private key. CloudTrail uses different private/public key pairs per region. Each digest file is signed with a private key unique to its region. Therefore, when you validate a digest file from a particular region, you must look in the same region for its corresponding public key.

                                      func (*Client) ListTags

                                      func (c *Client) ListTags(ctx context.Context, params *ListTagsInput, optFns ...func(*Options)) (*ListTagsOutput, error)

                                        Lists the tags for the trail in the current region.

                                        func (*Client) ListTrails

                                        func (c *Client) ListTrails(ctx context.Context, params *ListTrailsInput, optFns ...func(*Options)) (*ListTrailsOutput, error)

                                          Lists trails that are in the current account.

                                          func (*Client) LookupEvents

                                          func (c *Client) LookupEvents(ctx context.Context, params *LookupEventsInput, optFns ...func(*Options)) (*LookupEventsOutput, error)

                                            Looks up management events (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-concepts.html#cloudtrail-concepts-management-events) or CloudTrail Insights events (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-concepts.html#cloudtrail-concepts-insights-events) that are captured by CloudTrail. You can look up events that occurred in a region within the last 90 days. Lookup supports the following attributes for management events:

                                            * AWS access key

                                            * Event ID

                                            * Event name

                                            * Event source

                                            * Read only

                                            * Resource name

                                            * Resource type

                                            * User name

                                            Lookup supports the following attributes for Insights events:

                                            * Event ID

                                            * Event name

                                            * Event source

                                            All attributes are optional. The default number of results returned is 50, with a maximum of 50 possible. The response includes a token that you can use to get the next page of results. The rate of lookup requests is limited to two per second, per account, per region. If this limit is exceeded, a throttling error occurs.

                                            func (*Client) PutEventSelectors

                                            func (c *Client) PutEventSelectors(ctx context.Context, params *PutEventSelectorsInput, optFns ...func(*Options)) (*PutEventSelectorsOutput, error)

                                              Configures an event selector or advanced event selectors for your trail. Use event selectors or advanced event selectors to specify management and data event settings for your trail. By default, trails created without specific event selectors are configured to log all read and write management events, and no data events. When an event occurs in your account, CloudTrail evaluates the event selectors or advanced event selectors in all trails. For each trail, if the event matches any event selector, the trail processes and logs the event. If the event doesn't match any event selector, the trail doesn't log the event. Example

                                              * You create an event selector for a trail and specify that you want write-only events.

                                              * The EC2 GetConsoleOutput and RunInstances API operations occur in your account.

                                              * CloudTrail evaluates whether the events match your event selectors.

                                              * The RunInstances is a write-only event and it matches your event selector. The trail logs the event.

                                              * The GetConsoleOutput is a read-only event that doesn't match your event selector. The trail doesn't log the event.

                                              The PutEventSelectors operation must be called from the region in which the trail was created; otherwise, an InvalidHomeRegionException exception is thrown. You can configure up to five event selectors for each trail. For more information, see Logging data and management events for trails (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-and-data-events-with-cloudtrail.html) and Quotas in AWS CloudTrail (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/WhatIsCloudTrail-Limits.html) in the AWS CloudTrail User Guide. You can add advanced event selectors, and conditions for your advanced event selectors, up to a maximum of 500 values for all conditions and selectors on a trail. You can use either AdvancedEventSelectors or EventSelectors, but not both. If you apply AdvancedEventSelectors to a trail, any existing EventSelectors are overwritten. For more information about advanced event selectors, see Logging data events for trails (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html) in the AWS CloudTrail User Guide.

                                              func (*Client) PutInsightSelectors

                                              func (c *Client) PutInsightSelectors(ctx context.Context, params *PutInsightSelectorsInput, optFns ...func(*Options)) (*PutInsightSelectorsOutput, error)

                                                Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing trail. You also use PutInsightSelectors to turn off Insights event logging, by passing an empty list of insight types. In this release, only ApiCallRateInsight is supported as an Insights selector.

                                                func (*Client) RemoveTags

                                                func (c *Client) RemoveTags(ctx context.Context, params *RemoveTagsInput, optFns ...func(*Options)) (*RemoveTagsOutput, error)

                                                  Removes the specified tags from a trail.

                                                  func (*Client) StartLogging

                                                  func (c *Client) StartLogging(ctx context.Context, params *StartLoggingInput, optFns ...func(*Options)) (*StartLoggingOutput, error)

                                                    Starts the recording of AWS API calls and log file delivery for a trail. For a trail that is enabled in all regions, this operation must be called from the region in which the trail was created. This operation cannot be called on the shadow trails (replicated trails in other regions) of a trail that is enabled in all regions.

                                                    func (*Client) StopLogging

                                                    func (c *Client) StopLogging(ctx context.Context, params *StopLoggingInput, optFns ...func(*Options)) (*StopLoggingOutput, error)

                                                      Suspends the recording of AWS API calls and log file delivery for the specified trail. Under most circumstances, there is no need to use this action. You can update a trail without stopping it first. This action is the only way to stop recording. For a trail enabled in all regions, this operation must be called from the region in which the trail was created, or an InvalidHomeRegionException will occur. This operation cannot be called on the shadow trails (replicated trails in other regions) of a trail enabled in all regions.

                                                      func (*Client) UpdateTrail

                                                      func (c *Client) UpdateTrail(ctx context.Context, params *UpdateTrailInput, optFns ...func(*Options)) (*UpdateTrailOutput, error)

                                                        Updates the settings that specify delivery of log files. Changes to a trail do not require stopping the CloudTrail service. Use this action to designate an existing bucket for log delivery. If the existing bucket has previously been a target for CloudTrail log files, an IAM policy exists for the bucket. UpdateTrail must be called from the region in which the trail was created; otherwise, an InvalidHomeRegionException is thrown.

                                                        type CreateTrailInput

                                                        type CreateTrailInput struct {
                                                        
                                                        	// Specifies the name of the trail. The name must meet the following
                                                        	// requirements:
                                                        	//
                                                        	// * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods
                                                        	// (.), underscores (_), or dashes (-)
                                                        	//
                                                        	// * Start with a letter or number, and end
                                                        	// with a letter or number
                                                        	//
                                                        	// * Be between 3 and 128 characters
                                                        	//
                                                        	// * Have no adjacent
                                                        	// periods, underscores or dashes. Names like my-_namespace and my--namespace are
                                                        	// invalid.
                                                        	//
                                                        	// * Not be in IP address format (for example, 192.168.5.4)
                                                        	//
                                                        	// This member is required.
                                                        	Name *string
                                                        
                                                        	// Specifies the name of the Amazon S3 bucket designated for publishing log files.
                                                        	// See Amazon S3 Bucket Naming Requirements
                                                        	// (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/create_trail_naming_policy.html).
                                                        	//
                                                        	// This member is required.
                                                        	S3BucketName *string
                                                        
                                                        	// Specifies a log group name using an Amazon Resource Name (ARN), a unique
                                                        	// identifier that represents the log group to which CloudTrail logs will be
                                                        	// delivered. Not required unless you specify CloudWatchLogsRoleArn.
                                                        	CloudWatchLogsLogGroupArn *string
                                                        
                                                        	// Specifies the role for the CloudWatch Logs endpoint to assume to write to a
                                                        	// user's log group.
                                                        	CloudWatchLogsRoleArn *string
                                                        
                                                        	// Specifies whether log file integrity validation is enabled. The default is
                                                        	// false. When you disable log file integrity validation, the chain of digest files
                                                        	// is broken after one hour. CloudTrail will not create digest files for log files
                                                        	// that were delivered during a period in which log file integrity validation was
                                                        	// disabled. For example, if you enable log file integrity validation at noon on
                                                        	// January 1, disable it at noon on January 2, and re-enable it at noon on January
                                                        	// 10, digest files will not be created for the log files delivered from noon on
                                                        	// January 2 to noon on January 10. The same applies whenever you stop CloudTrail
                                                        	// logging or delete a trail.
                                                        	EnableLogFileValidation *bool
                                                        
                                                        	// Specifies whether the trail is publishing events from global services such as
                                                        	// IAM to the log files.
                                                        	IncludeGlobalServiceEvents *bool
                                                        
                                                        	// Specifies whether the trail is created in the current region or in all regions.
                                                        	// The default is false, which creates a trail only in the region where you are
                                                        	// signed in. As a best practice, consider creating trails that log events in all
                                                        	// regions.
                                                        	IsMultiRegionTrail *bool
                                                        
                                                        	// Specifies whether the trail is created for all accounts in an organization in
                                                        	// AWS Organizations, or only for the current AWS account. The default is false,
                                                        	// and cannot be true unless the call is made on behalf of an AWS account that is
                                                        	// the master account for an organization in AWS Organizations.
                                                        	IsOrganizationTrail *bool
                                                        
                                                        	// Specifies the KMS key ID to use to encrypt the logs delivered by CloudTrail. The
                                                        	// value can be an alias name prefixed by "alias/", a fully specified ARN to an
                                                        	// alias, a fully specified ARN to a key, or a globally unique identifier.
                                                        	// Examples:
                                                        	//
                                                        	// * alias/MyAliasName
                                                        	//
                                                        	// *
                                                        	// arn:aws:kms:us-east-2:123456789012:alias/MyAliasName
                                                        	//
                                                        	// *
                                                        	// arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
                                                        	//
                                                        	// *
                                                        	// 12345678-1234-1234-1234-123456789012
                                                        	KmsKeyId *string
                                                        
                                                        	// Specifies the Amazon S3 key prefix that comes after the name of the bucket you
                                                        	// have designated for log file delivery. For more information, see Finding Your
                                                        	// CloudTrail Log Files
                                                        	// (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html).
                                                        	// The maximum length is 200 characters.
                                                        	S3KeyPrefix *string
                                                        
                                                        	// Specifies the name of the Amazon SNS topic defined for notification of log file
                                                        	// delivery. The maximum length is 256 characters.
                                                        	SnsTopicName *string
                                                        
                                                        	// A list of tags.
                                                        	TagsList []types.Tag
                                                        }

                                                          Specifies the settings for each trail.

                                                          type CreateTrailOutput

                                                          type CreateTrailOutput struct {
                                                          
                                                          	// Specifies the Amazon Resource Name (ARN) of the log group to which CloudTrail
                                                          	// logs will be delivered.
                                                          	CloudWatchLogsLogGroupArn *string
                                                          
                                                          	// Specifies the role for the CloudWatch Logs endpoint to assume to write to a
                                                          	// user's log group.
                                                          	CloudWatchLogsRoleArn *string
                                                          
                                                          	// Specifies whether the trail is publishing events from global services such as
                                                          	// IAM to the log files.
                                                          	IncludeGlobalServiceEvents *bool
                                                          
                                                          	// Specifies whether the trail exists in one region or in all regions.
                                                          	IsMultiRegionTrail *bool
                                                          
                                                          	// Specifies whether the trail is an organization trail.
                                                          	IsOrganizationTrail *bool
                                                          
                                                          	// Specifies the KMS key ID that encrypts the logs delivered by CloudTrail. The
                                                          	// value is a fully specified ARN to a KMS key in the format:
                                                          	// arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
                                                          	KmsKeyId *string
                                                          
                                                          	// Specifies whether log file integrity validation is enabled.
                                                          	LogFileValidationEnabled *bool
                                                          
                                                          	// Specifies the name of the trail.
                                                          	Name *string
                                                          
                                                          	// Specifies the name of the Amazon S3 bucket designated for publishing log files.
                                                          	S3BucketName *string
                                                          
                                                          	// Specifies the Amazon S3 key prefix that comes after the name of the bucket you
                                                          	// have designated for log file delivery. For more information, see Finding Your
                                                          	// CloudTrail Log Files
                                                          	// (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html).
                                                          	S3KeyPrefix *string
                                                          
                                                          	// Specifies the ARN of the Amazon SNS topic that CloudTrail uses to send
                                                          	// notifications when log files are delivered. The format of a topic ARN is:
                                                          	// arn:aws:sns:us-east-2:123456789012:MyTopic
                                                          	SnsTopicARN *string
                                                          
                                                          	// This field is no longer in use. Use SnsTopicARN.
                                                          	//
                                                          	// Deprecated: This member has been deprecated.
                                                          	SnsTopicName *string
                                                          
                                                          	// Specifies the ARN of the trail that was created. The format of a trail ARN is:
                                                          	// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                          	TrailARN *string
                                                          
                                                          	// Metadata pertaining to the operation's result.
                                                          	ResultMetadata middleware.Metadata
                                                          }

                                                            Returns the objects or data listed below if successful. Otherwise, returns an error.

                                                            type DeleteTrailInput

                                                            type DeleteTrailInput struct {
                                                            
                                                            	// Specifies the name or the CloudTrail ARN of the trail to be deleted. The format
                                                            	// of a trail ARN is: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                            	//
                                                            	// This member is required.
                                                            	Name *string
                                                            }

                                                              The request that specifies the name of a trail to delete.

                                                              type DeleteTrailOutput

                                                              type DeleteTrailOutput struct {
                                                              	// Metadata pertaining to the operation's result.
                                                              	ResultMetadata middleware.Metadata
                                                              }

                                                                Returns the objects or data listed below if successful. Otherwise, returns an error.

                                                                type DescribeTrailsInput

                                                                type DescribeTrailsInput struct {
                                                                
                                                                	// Specifies whether to include shadow trails in the response. A shadow trail is
                                                                	// the replication in a region of a trail that was created in a different region,
                                                                	// or in the case of an organization trail, the replication of an organization
                                                                	// trail in member accounts. If you do not include shadow trails, organization
                                                                	// trails in a member account and region replication trails will not be returned.
                                                                	// The default is true.
                                                                	IncludeShadowTrails *bool
                                                                
                                                                	// Specifies a list of trail names, trail ARNs, or both, of the trails to describe.
                                                                	// The format of a trail ARN is:
                                                                	// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail If an empty list is
                                                                	// specified, information for the trail in the current region is returned.
                                                                	//
                                                                	// * If an
                                                                	// empty list is specified and IncludeShadowTrails is false, then information for
                                                                	// all trails in the current region is returned.
                                                                	//
                                                                	// * If an empty list is specified
                                                                	// and IncludeShadowTrails is null or true, then information for all trails in the
                                                                	// current region and any associated shadow trails in other regions is
                                                                	// returned.
                                                                	//
                                                                	// If one or more trail names are specified, information is returned
                                                                	// only if the names match the names of trails belonging only to the current
                                                                	// region. To return information about a trail in another region, you must specify
                                                                	// its trail ARN.
                                                                	TrailNameList []string
                                                                }

                                                                  Returns information about the trail.

                                                                  type DescribeTrailsOutput

                                                                  type DescribeTrailsOutput struct {
                                                                  
                                                                  	// The list of trail objects. Trail objects with string values are only returned if
                                                                  	// values for the objects exist in a trail's configuration. For example,
                                                                  	// SNSTopicName and SNSTopicARN are only returned in results if a trail is
                                                                  	// configured to send SNS notifications. Similarly, KMSKeyId only appears in
                                                                  	// results if a trail's log files are encrypted with AWS KMS-managed keys.
                                                                  	TrailList []types.Trail
                                                                  
                                                                  	// Metadata pertaining to the operation's result.
                                                                  	ResultMetadata middleware.Metadata
                                                                  }

                                                                    Returns the objects or data listed below if successful. Otherwise, returns an error.

                                                                    type EndpointResolver

                                                                    type EndpointResolver interface {
                                                                    	ResolveEndpoint(region string, options EndpointResolverOptions) (aws.Endpoint, error)
                                                                    }

                                                                      EndpointResolver interface for resolving service endpoints.

                                                                      func EndpointResolverFromURL

                                                                      func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver

                                                                        EndpointResolverFromURL returns an EndpointResolver configured using the provided endpoint url. By default, the resolved endpoint resolver uses the client region as signing region, and the endpoint source is set to EndpointSourceCustom.You can provide functional options to configure endpoint values for the resolved endpoint.

                                                                        type EndpointResolverFunc

                                                                        type EndpointResolverFunc func(region string, options EndpointResolverOptions) (aws.Endpoint, error)

                                                                          EndpointResolverFunc is a helper utility that wraps a function so it satisfies the EndpointResolver interface. This is useful when you want to add additional endpoint resolving logic, or stub out specific endpoints with custom values.

                                                                          func (EndpointResolverFunc) ResolveEndpoint

                                                                          func (fn EndpointResolverFunc) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error)

                                                                          type EndpointResolverOptions

                                                                          type EndpointResolverOptions = internalendpoints.Options

                                                                            EndpointResolverOptions is the service endpoint resolver options

                                                                            type GetEventSelectorsInput

                                                                            type GetEventSelectorsInput struct {
                                                                            
                                                                            	// Specifies the name of the trail or trail ARN. If you specify a trail name, the
                                                                            	// string must meet the following requirements:
                                                                            	//
                                                                            	// * Contain only ASCII letters (a-z,
                                                                            	// A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)
                                                                            	//
                                                                            	// * Start with a
                                                                            	// letter or number, and end with a letter or number
                                                                            	//
                                                                            	// * Be between 3 and 128
                                                                            	// characters
                                                                            	//
                                                                            	// * Have no adjacent periods, underscores or dashes. Names like
                                                                            	// my-_namespace and my--namespace are not valid.
                                                                            	//
                                                                            	// * Not be in IP address format
                                                                            	// (for example, 192.168.5.4)
                                                                            	//
                                                                            	// If you specify a trail ARN, it must be in the
                                                                            	// format: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                            	//
                                                                            	// This member is required.
                                                                            	TrailName *string
                                                                            }

                                                                            type GetEventSelectorsOutput

                                                                            type GetEventSelectorsOutput struct {
                                                                            
                                                                            	// The advanced event selectors that are configured for the trail.
                                                                            	AdvancedEventSelectors []types.AdvancedEventSelector
                                                                            
                                                                            	// The event selectors that are configured for the trail.
                                                                            	EventSelectors []types.EventSelector
                                                                            
                                                                            	// The specified trail ARN that has the event selectors.
                                                                            	TrailARN *string
                                                                            
                                                                            	// Metadata pertaining to the operation's result.
                                                                            	ResultMetadata middleware.Metadata
                                                                            }

                                                                            type GetInsightSelectorsInput

                                                                            type GetInsightSelectorsInput struct {
                                                                            
                                                                            	// Specifies the name of the trail or trail ARN. If you specify a trail name, the
                                                                            	// string must meet the following requirements:
                                                                            	//
                                                                            	// * Contain only ASCII letters (a-z,
                                                                            	// A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)
                                                                            	//
                                                                            	// * Start with a
                                                                            	// letter or number, and end with a letter or number
                                                                            	//
                                                                            	// * Be between 3 and 128
                                                                            	// characters
                                                                            	//
                                                                            	// * Have no adjacent periods, underscores or dashes. Names like
                                                                            	// my-_namespace and my--namespace are not valid.
                                                                            	//
                                                                            	// * Not be in IP address format
                                                                            	// (for example, 192.168.5.4)
                                                                            	//
                                                                            	// If you specify a trail ARN, it must be in the
                                                                            	// format: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                            	//
                                                                            	// This member is required.
                                                                            	TrailName *string
                                                                            }

                                                                            type GetInsightSelectorsOutput

                                                                            type GetInsightSelectorsOutput struct {
                                                                            
                                                                            	// A JSON string that contains the insight types you want to log on a trail. In
                                                                            	// this release, only ApiCallRateInsight is supported as an insight type.
                                                                            	InsightSelectors []types.InsightSelector
                                                                            
                                                                            	// The Amazon Resource Name (ARN) of a trail for which you want to get Insights
                                                                            	// selectors.
                                                                            	TrailARN *string
                                                                            
                                                                            	// Metadata pertaining to the operation's result.
                                                                            	ResultMetadata middleware.Metadata
                                                                            }

                                                                            type GetTrailInput

                                                                            type GetTrailInput struct {
                                                                            
                                                                            	// The name or the Amazon Resource Name (ARN) of the trail for which you want to
                                                                            	// retrieve settings information.
                                                                            	//
                                                                            	// This member is required.
                                                                            	Name *string
                                                                            }

                                                                            type GetTrailOutput

                                                                            type GetTrailOutput struct {
                                                                            
                                                                            	// The settings for a trail.
                                                                            	Trail *types.Trail
                                                                            
                                                                            	// Metadata pertaining to the operation's result.
                                                                            	ResultMetadata middleware.Metadata
                                                                            }

                                                                            type GetTrailStatusInput

                                                                            type GetTrailStatusInput struct {
                                                                            
                                                                            	// Specifies the name or the CloudTrail ARN of the trail for which you are
                                                                            	// requesting status. To get the status of a shadow trail (a replication of the
                                                                            	// trail in another region), you must specify its ARN. The format of a trail ARN
                                                                            	// is: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                            	//
                                                                            	// This member is required.
                                                                            	Name *string
                                                                            }

                                                                              The name of a trail about which you want the current status.

                                                                              type GetTrailStatusOutput

                                                                              type GetTrailStatusOutput struct {
                                                                              
                                                                              	// Whether the CloudTrail is currently logging AWS API calls.
                                                                              	IsLogging *bool
                                                                              
                                                                              	// Displays any CloudWatch Logs error that CloudTrail encountered when attempting
                                                                              	// to deliver logs to CloudWatch Logs.
                                                                              	LatestCloudWatchLogsDeliveryError *string
                                                                              
                                                                              	// Displays the most recent date and time when CloudTrail delivered logs to
                                                                              	// CloudWatch Logs.
                                                                              	LatestCloudWatchLogsDeliveryTime *time.Time
                                                                              
                                                                              	// This field is no longer in use.
                                                                              	LatestDeliveryAttemptSucceeded *string
                                                                              
                                                                              	// This field is no longer in use.
                                                                              	LatestDeliveryAttemptTime *string
                                                                              
                                                                              	// Displays any Amazon S3 error that CloudTrail encountered when attempting to
                                                                              	// deliver log files to the designated bucket. For more information see the topic
                                                                              	// Error Responses
                                                                              	// (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html) in the
                                                                              	// Amazon S3 API Reference. This error occurs only when there is a problem with the
                                                                              	// destination S3 bucket and will not occur for timeouts. To resolve the issue,
                                                                              	// create a new bucket and call UpdateTrail to specify the new bucket, or fix the
                                                                              	// existing objects so that CloudTrail can again write to the bucket.
                                                                              	LatestDeliveryError *string
                                                                              
                                                                              	// Specifies the date and time that CloudTrail last delivered log files to an
                                                                              	// account's Amazon S3 bucket.
                                                                              	LatestDeliveryTime *time.Time
                                                                              
                                                                              	// Displays any Amazon S3 error that CloudTrail encountered when attempting to
                                                                              	// deliver a digest file to the designated bucket. For more information see the
                                                                              	// topic Error Responses
                                                                              	// (https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html) in the
                                                                              	// Amazon S3 API Reference. This error occurs only when there is a problem with the
                                                                              	// destination S3 bucket and will not occur for timeouts. To resolve the issue,
                                                                              	// create a new bucket and call UpdateTrail to specify the new bucket, or fix the
                                                                              	// existing objects so that CloudTrail can again write to the bucket.
                                                                              	LatestDigestDeliveryError *string
                                                                              
                                                                              	// Specifies the date and time that CloudTrail last delivered a digest file to an
                                                                              	// account's Amazon S3 bucket.
                                                                              	LatestDigestDeliveryTime *time.Time
                                                                              
                                                                              	// This field is no longer in use.
                                                                              	LatestNotificationAttemptSucceeded *string
                                                                              
                                                                              	// This field is no longer in use.
                                                                              	LatestNotificationAttemptTime *string
                                                                              
                                                                              	// Displays any Amazon SNS error that CloudTrail encountered when attempting to
                                                                              	// send a notification. For more information about Amazon SNS errors, see the
                                                                              	// Amazon SNS Developer Guide
                                                                              	// (https://docs.aws.amazon.com/sns/latest/dg/welcome.html).
                                                                              	LatestNotificationError *string
                                                                              
                                                                              	// Specifies the date and time of the most recent Amazon SNS notification that
                                                                              	// CloudTrail has written a new log file to an account's Amazon S3 bucket.
                                                                              	LatestNotificationTime *time.Time
                                                                              
                                                                              	// Specifies the most recent date and time when CloudTrail started recording API
                                                                              	// calls for an AWS account.
                                                                              	StartLoggingTime *time.Time
                                                                              
                                                                              	// Specifies the most recent date and time when CloudTrail stopped recording API
                                                                              	// calls for an AWS account.
                                                                              	StopLoggingTime *time.Time
                                                                              
                                                                              	// This field is no longer in use.
                                                                              	TimeLoggingStarted *string
                                                                              
                                                                              	// This field is no longer in use.
                                                                              	TimeLoggingStopped *string
                                                                              
                                                                              	// Metadata pertaining to the operation's result.
                                                                              	ResultMetadata middleware.Metadata
                                                                              }

                                                                                Returns the objects or data listed below if successful. Otherwise, returns an error.

                                                                                type HTTPClient

                                                                                type HTTPClient interface {
                                                                                	Do(*http.Request) (*http.Response, error)
                                                                                }

                                                                                type HTTPSignerV4

                                                                                type HTTPSignerV4 interface {
                                                                                	SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time, optFns ...func(*v4.SignerOptions)) error
                                                                                }

                                                                                type ListPublicKeysAPIClient

                                                                                type ListPublicKeysAPIClient interface {
                                                                                	ListPublicKeys(context.Context, *ListPublicKeysInput, ...func(*Options)) (*ListPublicKeysOutput, error)
                                                                                }

                                                                                  ListPublicKeysAPIClient is a client that implements the ListPublicKeys operation.

                                                                                  type ListPublicKeysInput

                                                                                  type ListPublicKeysInput struct {
                                                                                  
                                                                                  	// Optionally specifies, in UTC, the end of the time range to look up public keys
                                                                                  	// for CloudTrail digest files. If not specified, the current time is used.
                                                                                  	EndTime *time.Time
                                                                                  
                                                                                  	// Reserved for future use.
                                                                                  	NextToken *string
                                                                                  
                                                                                  	// Optionally specifies, in UTC, the start of the time range to look up public keys
                                                                                  	// for CloudTrail digest files. If not specified, the current time is used, and the
                                                                                  	// current public key is returned.
                                                                                  	StartTime *time.Time
                                                                                  }

                                                                                    Requests the public keys for a specified time range.

                                                                                    type ListPublicKeysOutput

                                                                                    type ListPublicKeysOutput struct {
                                                                                    
                                                                                    	// Reserved for future use.
                                                                                    	NextToken *string
                                                                                    
                                                                                    	// Contains an array of PublicKey objects. The returned public keys may have
                                                                                    	// validity time ranges that overlap.
                                                                                    	PublicKeyList []types.PublicKey
                                                                                    
                                                                                    	// Metadata pertaining to the operation's result.
                                                                                    	ResultMetadata middleware.Metadata
                                                                                    }

                                                                                      Returns the objects or data listed below if successful. Otherwise, returns an error.

                                                                                      type ListPublicKeysPaginator

                                                                                      type ListPublicKeysPaginator struct {
                                                                                      	// contains filtered or unexported fields
                                                                                      }

                                                                                        ListPublicKeysPaginator is a paginator for ListPublicKeys

                                                                                        func NewListPublicKeysPaginator

                                                                                        func NewListPublicKeysPaginator(client ListPublicKeysAPIClient, params *ListPublicKeysInput, optFns ...func(*ListPublicKeysPaginatorOptions)) *ListPublicKeysPaginator

                                                                                          NewListPublicKeysPaginator returns a new ListPublicKeysPaginator

                                                                                          func (*ListPublicKeysPaginator) HasMorePages

                                                                                          func (p *ListPublicKeysPaginator) HasMorePages() bool

                                                                                            HasMorePages returns a boolean indicating whether more pages are available

                                                                                            func (*ListPublicKeysPaginator) NextPage

                                                                                            func (p *ListPublicKeysPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListPublicKeysOutput, error)

                                                                                              NextPage retrieves the next ListPublicKeys page.

                                                                                              type ListPublicKeysPaginatorOptions

                                                                                              type ListPublicKeysPaginatorOptions struct {
                                                                                              	// Set to true if pagination should stop if the service returns a pagination token
                                                                                              	// that matches the most recent token provided to the service.
                                                                                              	StopOnDuplicateToken bool
                                                                                              }

                                                                                                ListPublicKeysPaginatorOptions is the paginator options for ListPublicKeys

                                                                                                type ListTagsAPIClient

                                                                                                type ListTagsAPIClient interface {
                                                                                                	ListTags(context.Context, *ListTagsInput, ...func(*Options)) (*ListTagsOutput, error)
                                                                                                }

                                                                                                  ListTagsAPIClient is a client that implements the ListTags operation.

                                                                                                  type ListTagsInput

                                                                                                  type ListTagsInput struct {
                                                                                                  
                                                                                                  	// Specifies a list of trail ARNs whose tags will be listed. The list has a limit
                                                                                                  	// of 20 ARNs. The format of a trail ARN is:
                                                                                                  	// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                                                  	//
                                                                                                  	// This member is required.
                                                                                                  	ResourceIdList []string
                                                                                                  
                                                                                                  	// Reserved for future use.
                                                                                                  	NextToken *string
                                                                                                  }

                                                                                                    Specifies a list of trail tags to return.

                                                                                                    type ListTagsOutput

                                                                                                    type ListTagsOutput struct {
                                                                                                    
                                                                                                    	// Reserved for future use.
                                                                                                    	NextToken *string
                                                                                                    
                                                                                                    	// A list of resource tags.
                                                                                                    	ResourceTagList []types.ResourceTag
                                                                                                    
                                                                                                    	// Metadata pertaining to the operation's result.
                                                                                                    	ResultMetadata middleware.Metadata
                                                                                                    }

                                                                                                      Returns the objects or data listed below if successful. Otherwise, returns an error.

                                                                                                      type ListTagsPaginator

                                                                                                      type ListTagsPaginator struct {
                                                                                                      	// contains filtered or unexported fields
                                                                                                      }

                                                                                                        ListTagsPaginator is a paginator for ListTags

                                                                                                        func NewListTagsPaginator

                                                                                                        func NewListTagsPaginator(client ListTagsAPIClient, params *ListTagsInput, optFns ...func(*ListTagsPaginatorOptions)) *ListTagsPaginator

                                                                                                          NewListTagsPaginator returns a new ListTagsPaginator

                                                                                                          func (*ListTagsPaginator) HasMorePages

                                                                                                          func (p *ListTagsPaginator) HasMorePages() bool

                                                                                                            HasMorePages returns a boolean indicating whether more pages are available

                                                                                                            func (*ListTagsPaginator) NextPage

                                                                                                            func (p *ListTagsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListTagsOutput, error)

                                                                                                              NextPage retrieves the next ListTags page.

                                                                                                              type ListTagsPaginatorOptions

                                                                                                              type ListTagsPaginatorOptions struct {
                                                                                                              	// Set to true if pagination should stop if the service returns a pagination token
                                                                                                              	// that matches the most recent token provided to the service.
                                                                                                              	StopOnDuplicateToken bool
                                                                                                              }

                                                                                                                ListTagsPaginatorOptions is the paginator options for ListTags

                                                                                                                type ListTrailsAPIClient

                                                                                                                type ListTrailsAPIClient interface {
                                                                                                                	ListTrails(context.Context, *ListTrailsInput, ...func(*Options)) (*ListTrailsOutput, error)
                                                                                                                }

                                                                                                                  ListTrailsAPIClient is a client that implements the ListTrails operation.

                                                                                                                  type ListTrailsInput

                                                                                                                  type ListTrailsInput struct {
                                                                                                                  
                                                                                                                  	// The token to use to get the next page of results after a previous API call. This
                                                                                                                  	// token must be passed in with the same parameters that were specified in the the
                                                                                                                  	// original call. For example, if the original call specified an AttributeKey of
                                                                                                                  	// 'Username' with a value of 'root', the call with NextToken should include those
                                                                                                                  	// same parameters.
                                                                                                                  	NextToken *string
                                                                                                                  }

                                                                                                                  type ListTrailsOutput

                                                                                                                  type ListTrailsOutput struct {
                                                                                                                  
                                                                                                                  	// The token to use to get the next page of results after a previous API call. If
                                                                                                                  	// the token does not appear, there are no more results to return. The token must
                                                                                                                  	// be passed in with the same parameters as the previous call. For example, if the
                                                                                                                  	// original call specified an AttributeKey of 'Username' with a value of 'root',
                                                                                                                  	// the call with NextToken should include those same parameters.
                                                                                                                  	NextToken *string
                                                                                                                  
                                                                                                                  	// Returns the name, ARN, and home region of trails in the current account.
                                                                                                                  	Trails []types.TrailInfo
                                                                                                                  
                                                                                                                  	// Metadata pertaining to the operation's result.
                                                                                                                  	ResultMetadata middleware.Metadata
                                                                                                                  }

                                                                                                                  type ListTrailsPaginator

                                                                                                                  type ListTrailsPaginator struct {
                                                                                                                  	// contains filtered or unexported fields
                                                                                                                  }

                                                                                                                    ListTrailsPaginator is a paginator for ListTrails

                                                                                                                    func NewListTrailsPaginator

                                                                                                                    func NewListTrailsPaginator(client ListTrailsAPIClient, params *ListTrailsInput, optFns ...func(*ListTrailsPaginatorOptions)) *ListTrailsPaginator

                                                                                                                      NewListTrailsPaginator returns a new ListTrailsPaginator

                                                                                                                      func (*ListTrailsPaginator) HasMorePages

                                                                                                                      func (p *ListTrailsPaginator) HasMorePages() bool

                                                                                                                        HasMorePages returns a boolean indicating whether more pages are available

                                                                                                                        func (*ListTrailsPaginator) NextPage

                                                                                                                        func (p *ListTrailsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListTrailsOutput, error)

                                                                                                                          NextPage retrieves the next ListTrails page.

                                                                                                                          type ListTrailsPaginatorOptions

                                                                                                                          type ListTrailsPaginatorOptions struct {
                                                                                                                          	// Set to true if pagination should stop if the service returns a pagination token
                                                                                                                          	// that matches the most recent token provided to the service.
                                                                                                                          	StopOnDuplicateToken bool
                                                                                                                          }

                                                                                                                            ListTrailsPaginatorOptions is the paginator options for ListTrails

                                                                                                                            type LookupEventsAPIClient

                                                                                                                            type LookupEventsAPIClient interface {
                                                                                                                            	LookupEvents(context.Context, *LookupEventsInput, ...func(*Options)) (*LookupEventsOutput, error)
                                                                                                                            }

                                                                                                                              LookupEventsAPIClient is a client that implements the LookupEvents operation.

                                                                                                                              type LookupEventsInput

                                                                                                                              type LookupEventsInput struct {
                                                                                                                              
                                                                                                                              	// Specifies that only events that occur before or at the specified time are
                                                                                                                              	// returned. If the specified end time is before the specified start time, an error
                                                                                                                              	// is returned.
                                                                                                                              	EndTime *time.Time
                                                                                                                              
                                                                                                                              	// Specifies the event category. If you do not specify an event category, events of
                                                                                                                              	// the category are not returned in the response. For example, if you do not
                                                                                                                              	// specify insight as the value of EventCategory, no Insights events are returned.
                                                                                                                              	EventCategory types.EventCategory
                                                                                                                              
                                                                                                                              	// Contains a list of lookup attributes. Currently the list can contain only one
                                                                                                                              	// item.
                                                                                                                              	LookupAttributes []types.LookupAttribute
                                                                                                                              
                                                                                                                              	// The number of events to return. Possible values are 1 through 50. The default is
                                                                                                                              	// 50.
                                                                                                                              	MaxResults *int32
                                                                                                                              
                                                                                                                              	// The token to use to get the next page of results after a previous API call. This
                                                                                                                              	// token must be passed in with the same parameters that were specified in the the
                                                                                                                              	// original call. For example, if the original call specified an AttributeKey of
                                                                                                                              	// 'Username' with a value of 'root', the call with NextToken should include those
                                                                                                                              	// same parameters.
                                                                                                                              	NextToken *string
                                                                                                                              
                                                                                                                              	// Specifies that only events that occur after or at the specified time are
                                                                                                                              	// returned. If the specified start time is after the specified end time, an error
                                                                                                                              	// is returned.
                                                                                                                              	StartTime *time.Time
                                                                                                                              }

                                                                                                                                Contains a request for LookupEvents.

                                                                                                                                type LookupEventsOutput

                                                                                                                                type LookupEventsOutput struct {
                                                                                                                                
                                                                                                                                	// A list of events returned based on the lookup attributes specified and the
                                                                                                                                	// CloudTrail event. The events list is sorted by time. The most recent event is
                                                                                                                                	// listed first.
                                                                                                                                	Events []types.Event
                                                                                                                                
                                                                                                                                	// The token to use to get the next page of results after a previous API call. If
                                                                                                                                	// the token does not appear, there are no more results to return. The token must
                                                                                                                                	// be passed in with the same parameters as the previous call. For example, if the
                                                                                                                                	// original call specified an AttributeKey of 'Username' with a value of 'root',
                                                                                                                                	// the call with NextToken should include those same parameters.
                                                                                                                                	NextToken *string
                                                                                                                                
                                                                                                                                	// Metadata pertaining to the operation's result.
                                                                                                                                	ResultMetadata middleware.Metadata
                                                                                                                                }

                                                                                                                                  Contains a response to a LookupEvents action.

                                                                                                                                  type LookupEventsPaginator

                                                                                                                                  type LookupEventsPaginator struct {
                                                                                                                                  	// contains filtered or unexported fields
                                                                                                                                  }

                                                                                                                                    LookupEventsPaginator is a paginator for LookupEvents

                                                                                                                                    func NewLookupEventsPaginator

                                                                                                                                    func NewLookupEventsPaginator(client LookupEventsAPIClient, params *LookupEventsInput, optFns ...func(*LookupEventsPaginatorOptions)) *LookupEventsPaginator

                                                                                                                                      NewLookupEventsPaginator returns a new LookupEventsPaginator

                                                                                                                                      func (*LookupEventsPaginator) HasMorePages

                                                                                                                                      func (p *LookupEventsPaginator) HasMorePages() bool

                                                                                                                                        HasMorePages returns a boolean indicating whether more pages are available

                                                                                                                                        func (*LookupEventsPaginator) NextPage

                                                                                                                                        func (p *LookupEventsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*LookupEventsOutput, error)

                                                                                                                                          NextPage retrieves the next LookupEvents page.

                                                                                                                                          type LookupEventsPaginatorOptions

                                                                                                                                          type LookupEventsPaginatorOptions struct {
                                                                                                                                          	// The number of events to return. Possible values are 1 through 50. The default is
                                                                                                                                          	// 50.
                                                                                                                                          	Limit int32
                                                                                                                                          
                                                                                                                                          	// Set to true if pagination should stop if the service returns a pagination token
                                                                                                                                          	// that matches the most recent token provided to the service.
                                                                                                                                          	StopOnDuplicateToken bool
                                                                                                                                          }

                                                                                                                                            LookupEventsPaginatorOptions is the paginator options for LookupEvents

                                                                                                                                            type Options

                                                                                                                                            type Options struct {
                                                                                                                                            	// Set of options to modify how an operation is invoked. These apply to all
                                                                                                                                            	// operations invoked for this client. Use functional options on operation call to
                                                                                                                                            	// modify this list for per operation behavior.
                                                                                                                                            	APIOptions []func(*middleware.Stack) error
                                                                                                                                            
                                                                                                                                            	// Configures the events that will be sent to the configured logger.
                                                                                                                                            	ClientLogMode aws.ClientLogMode
                                                                                                                                            
                                                                                                                                            	// The credentials object to use when signing requests.
                                                                                                                                            	Credentials aws.CredentialsProvider
                                                                                                                                            
                                                                                                                                            	// The endpoint options to be used when attempting to resolve an endpoint.
                                                                                                                                            	EndpointOptions EndpointResolverOptions
                                                                                                                                            
                                                                                                                                            	// The service endpoint resolver.
                                                                                                                                            	EndpointResolver EndpointResolver
                                                                                                                                            
                                                                                                                                            	// Signature Version 4 (SigV4) Signer
                                                                                                                                            	HTTPSignerV4 HTTPSignerV4
                                                                                                                                            
                                                                                                                                            	// The logger writer interface to write logging messages to.
                                                                                                                                            	Logger logging.Logger
                                                                                                                                            
                                                                                                                                            	// The region to send requests to. (Required)
                                                                                                                                            	Region string
                                                                                                                                            
                                                                                                                                            	// Retryer guides how HTTP requests should be retried in case of recoverable
                                                                                                                                            	// failures. When nil the API client will use a default retryer.
                                                                                                                                            	Retryer aws.Retryer
                                                                                                                                            
                                                                                                                                            	// The HTTP client to invoke API calls with. Defaults to client's default HTTP
                                                                                                                                            	// implementation if nil.
                                                                                                                                            	HTTPClient HTTPClient
                                                                                                                                            }

                                                                                                                                            func (Options) Copy

                                                                                                                                            func (o Options) Copy() Options

                                                                                                                                              Copy creates a clone where the APIOptions list is deep copied.

                                                                                                                                              type PutEventSelectorsInput

                                                                                                                                              type PutEventSelectorsInput struct {
                                                                                                                                              
                                                                                                                                              	// Specifies the name of the trail or trail ARN. If you specify a trail name, the
                                                                                                                                              	// string must meet the following requirements:
                                                                                                                                              	//
                                                                                                                                              	// * Contain only ASCII letters (a-z,
                                                                                                                                              	// A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)
                                                                                                                                              	//
                                                                                                                                              	// * Start with a
                                                                                                                                              	// letter or number, and end with a letter or number
                                                                                                                                              	//
                                                                                                                                              	// * Be between 3 and 128
                                                                                                                                              	// characters
                                                                                                                                              	//
                                                                                                                                              	// * Have no adjacent periods, underscores or dashes. Names like
                                                                                                                                              	// my-_namespace and my--namespace are invalid.
                                                                                                                                              	//
                                                                                                                                              	// * Not be in IP address format (for
                                                                                                                                              	// example, 192.168.5.4)
                                                                                                                                              	//
                                                                                                                                              	// If you specify a trail ARN, it must be in the format:
                                                                                                                                              	// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                                                                                              	//
                                                                                                                                              	// This member is required.
                                                                                                                                              	TrailName *string
                                                                                                                                              
                                                                                                                                              	// Specifies the settings for advanced event selectors. You can add advanced event
                                                                                                                                              	// selectors, and conditions for your advanced event selectors, up to a maximum of
                                                                                                                                              	// 500 values for all conditions and selectors on a trail. You can use either
                                                                                                                                              	// AdvancedEventSelectors or EventSelectors, but not both. If you apply
                                                                                                                                              	// AdvancedEventSelectors to a trail, any existing EventSelectors are overwritten.
                                                                                                                                              	// For more information about advanced event selectors, see Logging data events for
                                                                                                                                              	// trails
                                                                                                                                              	// (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html)
                                                                                                                                              	// in the AWS CloudTrail User Guide.
                                                                                                                                              	AdvancedEventSelectors []types.AdvancedEventSelector
                                                                                                                                              
                                                                                                                                              	// Specifies the settings for your event selectors. You can configure up to five
                                                                                                                                              	// event selectors for a trail. You can use either EventSelectors or
                                                                                                                                              	// AdvancedEventSelectors in a PutEventSelectors request, but not both. If you
                                                                                                                                              	// apply EventSelectors to a trail, any existing AdvancedEventSelectors are
                                                                                                                                              	// overwritten.
                                                                                                                                              	EventSelectors []types.EventSelector
                                                                                                                                              }

                                                                                                                                              type PutEventSelectorsOutput

                                                                                                                                              type PutEventSelectorsOutput struct {
                                                                                                                                              
                                                                                                                                              	// Specifies the advanced event selectors configured for your trail.
                                                                                                                                              	AdvancedEventSelectors []types.AdvancedEventSelector
                                                                                                                                              
                                                                                                                                              	// Specifies the event selectors configured for your trail.
                                                                                                                                              	EventSelectors []types.EventSelector
                                                                                                                                              
                                                                                                                                              	// Specifies the ARN of the trail that was updated with event selectors. The format
                                                                                                                                              	// of a trail ARN is: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                                                                                              	TrailARN *string
                                                                                                                                              
                                                                                                                                              	// Metadata pertaining to the operation's result.
                                                                                                                                              	ResultMetadata middleware.Metadata
                                                                                                                                              }

                                                                                                                                              type PutInsightSelectorsInput

                                                                                                                                              type PutInsightSelectorsInput struct {
                                                                                                                                              
                                                                                                                                              	// A JSON string that contains the insight types you want to log on a trail. In
                                                                                                                                              	// this release, only ApiCallRateInsight is supported as an insight type.
                                                                                                                                              	//
                                                                                                                                              	// This member is required.
                                                                                                                                              	InsightSelectors []types.InsightSelector
                                                                                                                                              
                                                                                                                                              	// The name of the CloudTrail trail for which you want to change or add Insights
                                                                                                                                              	// selectors.
                                                                                                                                              	//
                                                                                                                                              	// This member is required.
                                                                                                                                              	TrailName *string
                                                                                                                                              }

                                                                                                                                              type PutInsightSelectorsOutput

                                                                                                                                              type PutInsightSelectorsOutput struct {
                                                                                                                                              
                                                                                                                                              	// A JSON string that contains the insight types you want to log on a trail. In
                                                                                                                                              	// this release, only ApiCallRateInsight is supported as an insight type.
                                                                                                                                              	InsightSelectors []types.InsightSelector
                                                                                                                                              
                                                                                                                                              	// The Amazon Resource Name (ARN) of a trail for which you want to change or add
                                                                                                                                              	// Insights selectors.
                                                                                                                                              	TrailARN *string
                                                                                                                                              
                                                                                                                                              	// Metadata pertaining to the operation's result.
                                                                                                                                              	ResultMetadata middleware.Metadata
                                                                                                                                              }

                                                                                                                                              type RemoveTagsInput

                                                                                                                                              type RemoveTagsInput struct {
                                                                                                                                              
                                                                                                                                              	// Specifies the ARN of the trail from which tags should be removed. The format of
                                                                                                                                              	// a trail ARN is: arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                                                                                              	//
                                                                                                                                              	// This member is required.
                                                                                                                                              	ResourceId *string
                                                                                                                                              
                                                                                                                                              	// Specifies a list of tags to be removed.
                                                                                                                                              	TagsList []types.Tag
                                                                                                                                              }

                                                                                                                                                Specifies the tags to remove from a trail.

                                                                                                                                                type RemoveTagsOutput

                                                                                                                                                type RemoveTagsOutput struct {
                                                                                                                                                	// Metadata pertaining to the operation's result.
                                                                                                                                                	ResultMetadata middleware.Metadata
                                                                                                                                                }

                                                                                                                                                  Returns the objects or data listed below if successful. Otherwise, returns an error.

                                                                                                                                                  type ResolveEndpoint

                                                                                                                                                  type ResolveEndpoint struct {
                                                                                                                                                  	Resolver EndpointResolver
                                                                                                                                                  	Options  EndpointResolverOptions
                                                                                                                                                  }

                                                                                                                                                  func (*ResolveEndpoint) HandleSerialize

                                                                                                                                                  func (*ResolveEndpoint) ID

                                                                                                                                                  func (*ResolveEndpoint) ID() string

                                                                                                                                                  type StartLoggingInput

                                                                                                                                                  type StartLoggingInput struct {
                                                                                                                                                  
                                                                                                                                                  	// Specifies the name or the CloudTrail ARN of the trail for which CloudTrail logs
                                                                                                                                                  	// AWS API calls. The format of a trail ARN is:
                                                                                                                                                  	// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                                                                                                  	//
                                                                                                                                                  	// This member is required.
                                                                                                                                                  	Name *string
                                                                                                                                                  }

                                                                                                                                                    The request to CloudTrail to start logging AWS API calls for an account.

                                                                                                                                                    type StartLoggingOutput

                                                                                                                                                    type StartLoggingOutput struct {
                                                                                                                                                    	// Metadata pertaining to the operation's result.
                                                                                                                                                    	ResultMetadata middleware.Metadata
                                                                                                                                                    }

                                                                                                                                                      Returns the objects or data listed below if successful. Otherwise, returns an error.

                                                                                                                                                      type StopLoggingInput

                                                                                                                                                      type StopLoggingInput struct {
                                                                                                                                                      
                                                                                                                                                      	// Specifies the name or the CloudTrail ARN of the trail for which CloudTrail will
                                                                                                                                                      	// stop logging AWS API calls. The format of a trail ARN is:
                                                                                                                                                      	// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                                                                                                      	//
                                                                                                                                                      	// This member is required.
                                                                                                                                                      	Name *string
                                                                                                                                                      }

                                                                                                                                                        Passes the request to CloudTrail to stop logging AWS API calls for the specified account.

                                                                                                                                                        type StopLoggingOutput

                                                                                                                                                        type StopLoggingOutput struct {
                                                                                                                                                        	// Metadata pertaining to the operation's result.
                                                                                                                                                        	ResultMetadata middleware.Metadata
                                                                                                                                                        }

                                                                                                                                                          Returns the objects or data listed below if successful. Otherwise, returns an error.

                                                                                                                                                          type UpdateTrailInput

                                                                                                                                                          type UpdateTrailInput struct {
                                                                                                                                                          
                                                                                                                                                          	// Specifies the name of the trail or trail ARN. If Name is a trail name, the
                                                                                                                                                          	// string must meet the following requirements:
                                                                                                                                                          	//
                                                                                                                                                          	// * Contain only ASCII letters (a-z,
                                                                                                                                                          	// A-Z), numbers (0-9), periods (.), underscores (_), or dashes (-)
                                                                                                                                                          	//
                                                                                                                                                          	// * Start with a
                                                                                                                                                          	// letter or number, and end with a letter or number
                                                                                                                                                          	//
                                                                                                                                                          	// * Be between 3 and 128
                                                                                                                                                          	// characters
                                                                                                                                                          	//
                                                                                                                                                          	// * Have no adjacent periods, underscores or dashes. Names like
                                                                                                                                                          	// my-_namespace and my--namespace are invalid.
                                                                                                                                                          	//
                                                                                                                                                          	// * Not be in IP address format (for
                                                                                                                                                          	// example, 192.168.5.4)
                                                                                                                                                          	//
                                                                                                                                                          	// If Name is a trail ARN, it must be in the format:
                                                                                                                                                          	// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                                                                                                          	//
                                                                                                                                                          	// This member is required.
                                                                                                                                                          	Name *string
                                                                                                                                                          
                                                                                                                                                          	// Specifies a log group name using an Amazon Resource Name (ARN), a unique
                                                                                                                                                          	// identifier that represents the log group to which CloudTrail logs will be
                                                                                                                                                          	// delivered. Not required unless you specify CloudWatchLogsRoleArn.
                                                                                                                                                          	CloudWatchLogsLogGroupArn *string
                                                                                                                                                          
                                                                                                                                                          	// Specifies the role for the CloudWatch Logs endpoint to assume to write to a
                                                                                                                                                          	// user's log group.
                                                                                                                                                          	CloudWatchLogsRoleArn *string
                                                                                                                                                          
                                                                                                                                                          	// Specifies whether log file validation is enabled. The default is false. When you
                                                                                                                                                          	// disable log file integrity validation, the chain of digest files is broken after
                                                                                                                                                          	// one hour. CloudTrail will not create digest files for log files that were
                                                                                                                                                          	// delivered during a period in which log file integrity validation was disabled.
                                                                                                                                                          	// For example, if you enable log file integrity validation at noon on January 1,
                                                                                                                                                          	// disable it at noon on January 2, and re-enable it at noon on January 10, digest
                                                                                                                                                          	// files will not be created for the log files delivered from noon on January 2 to
                                                                                                                                                          	// noon on January 10. The same applies whenever you stop CloudTrail logging or
                                                                                                                                                          	// delete a trail.
                                                                                                                                                          	EnableLogFileValidation *bool
                                                                                                                                                          
                                                                                                                                                          	// Specifies whether the trail is publishing events from global services such as
                                                                                                                                                          	// IAM to the log files.
                                                                                                                                                          	IncludeGlobalServiceEvents *bool
                                                                                                                                                          
                                                                                                                                                          	// Specifies whether the trail applies only to the current region or to all
                                                                                                                                                          	// regions. The default is false. If the trail exists only in the current region
                                                                                                                                                          	// and this value is set to true, shadow trails (replications of the trail) will be
                                                                                                                                                          	// created in the other regions. If the trail exists in all regions and this value
                                                                                                                                                          	// is set to false, the trail will remain in the region where it was created, and
                                                                                                                                                          	// its shadow trails in other regions will be deleted. As a best practice, consider
                                                                                                                                                          	// using trails that log events in all regions.
                                                                                                                                                          	IsMultiRegionTrail *bool
                                                                                                                                                          
                                                                                                                                                          	// Specifies whether the trail is applied to all accounts in an organization in AWS
                                                                                                                                                          	// Organizations, or only for the current AWS account. The default is false, and
                                                                                                                                                          	// cannot be true unless the call is made on behalf of an AWS account that is the
                                                                                                                                                          	// master account for an organization in AWS Organizations. If the trail is not an
                                                                                                                                                          	// organization trail and this is set to true, the trail will be created in all AWS
                                                                                                                                                          	// accounts that belong to the organization. If the trail is an organization trail
                                                                                                                                                          	// and this is set to false, the trail will remain in the current AWS account but
                                                                                                                                                          	// be deleted from all member accounts in the organization.
                                                                                                                                                          	IsOrganizationTrail *bool
                                                                                                                                                          
                                                                                                                                                          	// Specifies the KMS key ID to use to encrypt the logs delivered by CloudTrail. The
                                                                                                                                                          	// value can be an alias name prefixed by "alias/", a fully specified ARN to an
                                                                                                                                                          	// alias, a fully specified ARN to a key, or a globally unique identifier.
                                                                                                                                                          	// Examples:
                                                                                                                                                          	//
                                                                                                                                                          	// * alias/MyAliasName
                                                                                                                                                          	//
                                                                                                                                                          	// *
                                                                                                                                                          	// arn:aws:kms:us-east-2:123456789012:alias/MyAliasName
                                                                                                                                                          	//
                                                                                                                                                          	// *
                                                                                                                                                          	// arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
                                                                                                                                                          	//
                                                                                                                                                          	// *
                                                                                                                                                          	// 12345678-1234-1234-1234-123456789012
                                                                                                                                                          	KmsKeyId *string
                                                                                                                                                          
                                                                                                                                                          	// Specifies the name of the Amazon S3 bucket designated for publishing log files.
                                                                                                                                                          	// See Amazon S3 Bucket Naming Requirements
                                                                                                                                                          	// (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/create_trail_naming_policy.html).
                                                                                                                                                          	S3BucketName *string
                                                                                                                                                          
                                                                                                                                                          	// Specifies the Amazon S3 key prefix that comes after the name of the bucket you
                                                                                                                                                          	// have designated for log file delivery. For more information, see Finding Your
                                                                                                                                                          	// CloudTrail Log Files
                                                                                                                                                          	// (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html).
                                                                                                                                                          	// The maximum length is 200 characters.
                                                                                                                                                          	S3KeyPrefix *string
                                                                                                                                                          
                                                                                                                                                          	// Specifies the name of the Amazon SNS topic defined for notification of log file
                                                                                                                                                          	// delivery. The maximum length is 256 characters.
                                                                                                                                                          	SnsTopicName *string
                                                                                                                                                          }

                                                                                                                                                            Specifies settings to update for the trail.

                                                                                                                                                            type UpdateTrailOutput

                                                                                                                                                            type UpdateTrailOutput struct {
                                                                                                                                                            
                                                                                                                                                            	// Specifies the Amazon Resource Name (ARN) of the log group to which CloudTrail
                                                                                                                                                            	// logs will be delivered.
                                                                                                                                                            	CloudWatchLogsLogGroupArn *string
                                                                                                                                                            
                                                                                                                                                            	// Specifies the role for the CloudWatch Logs endpoint to assume to write to a
                                                                                                                                                            	// user's log group.
                                                                                                                                                            	CloudWatchLogsRoleArn *string
                                                                                                                                                            
                                                                                                                                                            	// Specifies whether the trail is publishing events from global services such as
                                                                                                                                                            	// IAM to the log files.
                                                                                                                                                            	IncludeGlobalServiceEvents *bool
                                                                                                                                                            
                                                                                                                                                            	// Specifies whether the trail exists in one region or in all regions.
                                                                                                                                                            	IsMultiRegionTrail *bool
                                                                                                                                                            
                                                                                                                                                            	// Specifies whether the trail is an organization trail.
                                                                                                                                                            	IsOrganizationTrail *bool
                                                                                                                                                            
                                                                                                                                                            	// Specifies the KMS key ID that encrypts the logs delivered by CloudTrail. The
                                                                                                                                                            	// value is a fully specified ARN to a KMS key in the format:
                                                                                                                                                            	// arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
                                                                                                                                                            	KmsKeyId *string
                                                                                                                                                            
                                                                                                                                                            	// Specifies whether log file integrity validation is enabled.
                                                                                                                                                            	LogFileValidationEnabled *bool
                                                                                                                                                            
                                                                                                                                                            	// Specifies the name of the trail.
                                                                                                                                                            	Name *string
                                                                                                                                                            
                                                                                                                                                            	// Specifies the name of the Amazon S3 bucket designated for publishing log files.
                                                                                                                                                            	S3BucketName *string
                                                                                                                                                            
                                                                                                                                                            	// Specifies the Amazon S3 key prefix that comes after the name of the bucket you
                                                                                                                                                            	// have designated for log file delivery. For more information, see Finding Your
                                                                                                                                                            	// CloudTrail Log Files
                                                                                                                                                            	// (https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-find-log-files.html).
                                                                                                                                                            	S3KeyPrefix *string
                                                                                                                                                            
                                                                                                                                                            	// Specifies the ARN of the Amazon SNS topic that CloudTrail uses to send
                                                                                                                                                            	// notifications when log files are delivered. The format of a topic ARN is:
                                                                                                                                                            	// arn:aws:sns:us-east-2:123456789012:MyTopic
                                                                                                                                                            	SnsTopicARN *string
                                                                                                                                                            
                                                                                                                                                            	// This field is no longer in use. Use SnsTopicARN.
                                                                                                                                                            	//
                                                                                                                                                            	// Deprecated: This member has been deprecated.
                                                                                                                                                            	SnsTopicName *string
                                                                                                                                                            
                                                                                                                                                            	// Specifies the ARN of the trail that was updated. The format of a trail ARN is:
                                                                                                                                                            	// arn:aws:cloudtrail:us-east-2:123456789012:trail/MyTrail
                                                                                                                                                            	TrailARN *string
                                                                                                                                                            
                                                                                                                                                            	// Metadata pertaining to the operation's result.
                                                                                                                                                            	ResultMetadata middleware.Metadata
                                                                                                                                                            }

                                                                                                                                                              Returns the objects or data listed below if successful. Otherwise, returns an error.

                                                                                                                                                              Directories

                                                                                                                                                              Path Synopsis
                                                                                                                                                              internal