CloudTrail class
This is the CloudTrail API Reference. It provides descriptions of actions, data types, common parameters, and common errors for CloudTrail.
Constructors
- CloudTrail({required String region, AwsClientCredentials? credentials, AwsClientCredentialsProvider? credentialsProvider, Client? client, String? endpointUrl})
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
addTags(
{required String resourceId, required List< Tag> tagsList}) → Future<void> - Adds one or more tags to a trail, event data store, dashboard, or channel, 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; 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 or event data store that applies to all Amazon Web Services Regions only from the Region in which the trail or event data store was created (also known as its home Region).
-
cancelQuery(
{required String queryId, String? eventDataStore, String? eventDataStoreOwnerAccountId}) → Future< CancelQueryResponse> -
Cancels a query if the query is not in a terminated state, such as
CANCELLED,FAILED,TIMED_OUT, orFINISHED. You must specify an ARN value forEventDataStore. The ID of the query that you want to cancel is also required. When you runCancelQuery, the query status might show asCANCELLEDeven if the operation is not yet finished. -
close(
) → void - Closes the internal HTTP client if none was provided at creation. If a client was passed as a constructor argument, this becomes a noop.
-
createChannel(
{required List< Destination> destinations, required String name, required String source, List<Tag> ? tags}) → Future<CreateChannelResponse> - Creates a channel for CloudTrail to ingest events from a partner or external source. After you create a channel, a CloudTrail Lake event data store can log events from the partner or source that you specify.
-
createDashboard(
{required String name, RefreshSchedule? refreshSchedule, List< Tag> ? tagsList, bool? terminationProtectionEnabled, List<RequestWidget> ? widgets}) → Future<CreateDashboardResponse> - Creates a custom dashboard or the Highlights dashboard.
-
createEventDataStore(
{required String name, List< AdvancedEventSelector> ? advancedEventSelectors, BillingMode? billingMode, String? kmsKeyId, bool? multiRegionEnabled, bool? organizationEnabled, int? retentionPeriod, bool? startIngestion, List<Tag> ? tagsList, bool? terminationProtectionEnabled}) → Future<CreateEventDataStoreResponse> - Creates a new event data store.
-
createTrail(
{required String name, required String s3BucketName, String? cloudWatchLogsLogGroupArn, String? cloudWatchLogsRoleArn, bool? enableLogFileValidation, bool? includeGlobalServiceEvents, bool? isMultiRegionTrail, bool? isOrganizationTrail, String? kmsKeyId, String? s3KeyPrefix, String? snsTopicName, List< Tag> ? tagsList}) → Future<CreateTrailResponse> - Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket.
-
deleteChannel(
{required String channel}) → Future< void> - Deletes a channel.
-
deleteDashboard(
{required String dashboardId}) → Future< void> - Deletes the specified dashboard. You cannot delete a dashboard that has termination protection enabled.
-
deleteEventDataStore(
{required String eventDataStore}) → Future< void> -
Disables the event data store specified by
EventDataStore, which accepts an event data store ARN. After you runDeleteEventDataStore, the event data store enters aPENDING_DELETIONstate, and is automatically deleted after a wait period of seven days.TerminationProtectionEnabledmust be set toFalseon the event data store and theFederationStatusmust beDISABLED. You cannot delete an event data store ifTerminationProtectionEnabledisTrueor theFederationStatusisENABLED. -
deleteResourcePolicy(
{required String resourceArn}) → Future< void> - Deletes the resource-based policy attached to the CloudTrail event data store, dashboard, or channel.
-
deleteTrail(
{required String name}) → Future< void> -
Deletes a trail. This operation must be called from the Region in which
the trail was created.
DeleteTrailcannot be called on the shadow trails (replicated trails in other Regions) of a trail that is enabled in all Regions. -
deregisterOrganizationDelegatedAdmin(
{required String delegatedAdminAccountId}) → Future< void> - Removes CloudTrail delegated administrator permissions from a member account in an organization.
-
describeQuery(
{String? eventDataStore, String? eventDataStoreOwnerAccountId, String? queryAlias, String? queryId, String? refreshId}) → Future< DescribeQueryResponse> - Returns metadata about a query, including query run time in milliseconds, number of events scanned and matched, and query status. If the query results were delivered to an S3 bucket, the response also provides the S3 URI and the delivery status.
-
describeTrails(
{bool? includeShadowTrails, List< String> ? trailNameList}) → Future<DescribeTrailsResponse> - Retrieves settings for one or more trails associated with the current Region for your account.
-
disableFederation(
{required String eventDataStore}) → Future< DisableFederationResponse> - Disables Lake query federation on the specified event data store. When you disable federation, CloudTrail disables the integration with Glue, Lake Formation, and Amazon Athena. After disabling Lake query federation, you can no longer query your event data in Amazon Athena.
-
enableFederation(
{required String eventDataStore, required String federationRoleArn}) → Future< EnableFederationResponse> - Enables Lake query federation on the specified event data store. Federating an event data store lets you view the metadata associated with the event data store in the Glue Data Catalog and run SQL queries against your event data using Amazon Athena. The table metadata stored in the Glue Data Catalog lets the Athena query engine know how to find, read, and process the data that you want to query.
-
generateQuery(
{required List< String> eventDataStores, required String prompt}) → Future<GenerateQueryResponse> - Generates a query from a natural language prompt. This operation uses generative artificial intelligence (generative AI) to produce a ready-to-use SQL query from the prompt.
-
getChannel(
{required String channel}) → Future< GetChannelResponse> - Returns information about a specific channel.
-
getDashboard(
{required String dashboardId}) → Future< GetDashboardResponse> - Returns the specified dashboard.
-
getEventConfiguration(
{String? eventDataStore, String? trailName}) → Future< GetEventConfigurationResponse> - Retrieves the current event configuration settings for the specified event data store or trail. The response includes maximum event size configuration, the context key selectors configured for the event data store, and any aggregation settings configured for the trail.
-
getEventDataStore(
{required String eventDataStore}) → Future< GetEventDataStoreResponse> - Returns information about an event data store specified as either an ARN or the ID portion of the ARN.
-
getEventSelectors(
{required String trailName}) → Future< GetEventSelectorsResponse> - Describes the settings for the event selectors that you configured for your trail. The information returned for your event selectors includes the following:
-
getImport(
{required String importId}) → Future< GetImportResponse> - Returns information about a specific import.
-
getInsightSelectors(
{String? eventDataStore, String? trailName}) → Future< GetInsightSelectorsResponse> -
Describes the settings for the Insights event selectors that you
configured for your trail or event data store.
GetInsightSelectorsshows if CloudTrail Insights logging is enabled and which Insights types are configured with corresponding event categories. If you runGetInsightSelectorson a trail or event data store that does not have Insights events enabled, the operation throws the exceptionInsightNotEnabledException -
getQueryResults(
{required String queryId, String? eventDataStore, String? eventDataStoreOwnerAccountId, int? maxQueryResults, String? nextToken}) → Future< GetQueryResultsResponse> -
Gets event data results of a query. You must specify the
QueryIDvalue returned by theStartQueryoperation. -
getResourcePolicy(
{required String resourceArn}) → Future< GetResourcePolicyResponse> - Retrieves the JSON text of the resource-based policy document attached to the CloudTrail event data store, dashboard, or channel.
-
getTrail(
{required String name}) → Future< GetTrailResponse> - Returns settings information for a specified trail.
-
getTrailStatus(
{required String name}) → Future< GetTrailStatusResponse> - 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.
-
listChannels(
{int? maxResults, String? nextToken}) → Future< ListChannelsResponse> - Lists the channels in the current account, and their source names.
-
listDashboards(
{int? maxResults, String? namePrefix, String? nextToken, DashboardType? type}) → Future< ListDashboardsResponse> - Returns information about all dashboards in the account, in the current Region.
-
listEventDataStores(
{int? maxResults, String? nextToken}) → Future< ListEventDataStoresResponse> - Returns information about all event data stores in the account, in the current Region.
-
listImportFailures(
{required String importId, int? maxResults, String? nextToken}) → Future< ListImportFailuresResponse> - Returns a list of failures for the specified import.
-
listImports(
{String? destination, ImportStatus? importStatus, int? maxResults, String? nextToken}) → Future< ListImportsResponse> -
Returns information on all imports, or a select set of imports by
ImportStatusorDestination. -
listInsightsData(
{required ListInsightsDataType dataType, required String insightSource, Map< ListInsightsDataDimensionKey, String> ? dimensions, DateTime? endTime, int? maxResults, String? nextToken, DateTime? startTime}) → Future<ListInsightsDataResponse> - Returns Insights events generated on a trail that logs data events. You can list Insights events that occurred in a Region within the last 90 days.
-
listInsightsMetricData(
{required String eventName, required String eventSource, required InsightType insightType, InsightsMetricDataType? dataType, DateTime? endTime, String? errorCode, int? maxResults, String? nextToken, int? period, DateTime? startTime, String? trailName}) → Future< ListInsightsMetricDataResponse> -
Returns Insights metrics data for trails that have enabled Insights. The
request must include the
EventSource,EventName, andInsightTypeparameters. -
listPublicKeys(
{DateTime? endTime, String? nextToken, DateTime? startTime}) → Future< ListPublicKeysResponse> - 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.
-
listQueries(
{required String eventDataStore, DateTime? endTime, int? maxResults, String? nextToken, QueryStatus? queryStatus, DateTime? startTime}) → Future< ListQueriesResponse> -
Returns a list of queries and query statuses for the past seven days. You
must specify an ARN value for
EventDataStore. Optionally, to shorten the list of results, you can specify a time range, formatted as timestamps, by addingStartTimeandEndTimeparameters, and aQueryStatusvalue. Valid values forQueryStatusincludeQUEUED,RUNNING,FINISHED,FAILED,TIMED_OUT, orCANCELLED. -
listTags(
{required List< String> resourceIdList, String? nextToken}) → Future<ListTagsResponse> - Lists the tags for the specified trails, event data stores, dashboards, or channels in the current Region.
-
listTrails(
{String? nextToken}) → Future< ListTrailsResponse> - Lists trails that are in the current account.
-
lookupEvents(
{DateTime? endTime, EventCategory? eventCategory, List< LookupAttribute> ? lookupAttributes, int? maxResults, String? nextToken, DateTime? startTime}) → Future<LookupEventsResponse> - Looks up management events or CloudTrail 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:
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
putEventConfiguration(
{List< AggregationConfiguration> ? aggregationConfigurations, List<ContextKeySelector> ? contextKeySelectors, String? eventDataStore, MaxEventSize? maxEventSize, String? trailName}) → Future<PutEventConfigurationResponse> - Updates the event configuration settings for the specified event data store or trail. This operation supports updating the maximum event size, adding or modifying context key selectors for event data store, and configuring aggregation settings for the trail.
-
putEventSelectors(
{required String trailName, List< AdvancedEventSelector> ? advancedEventSelectors, List<EventSelector> ? eventSelectors}) → Future<PutEventSelectorsResponse> -
Configures event selectors (also referred to as basic event
selectors) or advanced event selectors for your trail. You can use
either
AdvancedEventSelectorsorEventSelectors, but not both. If you applyAdvancedEventSelectorsto a trail, any existingEventSelectorsare overwritten. -
putInsightSelectors(
{required List< InsightSelector> insightSelectors, String? eventDataStore, String? insightsDestination, String? trailName}) → Future<PutInsightSelectorsResponse> -
Lets you enable Insights event logging on specific event categories by
specifying the Insights selectors that you want to enable on an existing
trail or event data store. You also use
PutInsightSelectorsto turn off Insights event logging, by passing an empty list of Insights types. The valid Insights event types areApiErrorRateInsightandApiCallRateInsight, and valid EventCategories areManagementandData. To enable Insights on an event data store, you must specify the ARNs (or ID suffix of the ARNs) for the source event data store (EventDataStore) and the destination event data store (InsightsDestination). The source event data store logs management events and enables Insights. The destination event data store logs Insights events based upon the management event activity of the source event data store. The source and destination event data stores must belong to the same Amazon Web Services account. -
putResourcePolicy(
{required String resourceArn, required String resourcePolicy}) → Future< PutResourcePolicyResponse> - Attaches a resource-based permission policy to a CloudTrail event data store, dashboard, or channel. For more information about resource-based policies, see CloudTrail resource-based policy examples in the CloudTrail User Guide.
-
registerOrganizationDelegatedAdmin(
{required String memberAccountId}) → Future< void> - Registers an organization’s member account as the CloudTrail delegated administrator.
-
removeTags(
{required String resourceId, required List< Tag> tagsList}) → Future<void> - Removes the specified tags from a trail, event data store, dashboard, or channel.
-
restoreEventDataStore(
{required String eventDataStore}) → Future< RestoreEventDataStoreResponse> -
Restores a deleted event data store specified by
EventDataStore, which accepts an event data store ARN. You can only restore a deleted event data store within the seven-day wait period after deletion. Restoring an event data store can take several minutes, depending on the size of the event data store. -
searchSampleQueries(
{required String searchPhrase, int? maxResults, String? nextToken}) → Future< SearchSampleQueriesResponse> -
Searches sample queries and returns a list of sample queries that are
sorted by relevance. To search for sample queries, provide a natural
language
SearchPhrasein English. -
startDashboardRefresh(
{required String dashboardId, Map< String, String> ? queryParameterValues}) → Future<StartDashboardRefreshResponse> - Starts a refresh of the specified dashboard.
-
startEventDataStoreIngestion(
{required String eventDataStore}) → Future< void> -
Starts the ingestion of live events on an event data store specified as
either an ARN or the ID portion of the ARN. To start ingestion, the event
data store
Statusmust beSTOPPED_INGESTIONand theeventCategorymust beManagement,Data,NetworkActivity, orConfigurationItem. -
startImport(
{List< String> ? destinations, DateTime? endEventTime, String? importId, ImportSource? importSource, DateTime? startEventTime}) → Future<StartImportResponse> -
Starts an import of logged trail events from a source S3 bucket to a
destination event data store. By default, CloudTrail only imports events
contained in the S3 bucket's
CloudTrailprefix and the prefixes inside theCloudTrailprefix, and does not check prefixes for other Amazon Web Services services. If you want to import CloudTrail events contained in another prefix, you must include the prefix in theS3LocationUri. For more considerations about importing trail events, see Considerations for copying trail events in the CloudTrail User Guide. -
startLogging(
{required String name}) → Future< void> - Starts the recording of Amazon Web Services 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.
-
startQuery(
{String? deliveryS3Uri, String? eventDataStoreOwnerAccountId, String? queryAlias, List< String> ? queryParameters, String? queryStatement}) → Future<StartQueryResponse> -
Starts a CloudTrail Lake query. Use the
QueryStatementparameter to provide your SQL query, enclosed in single quotation marks. Use the optionalDeliveryS3Uriparameter to deliver the query results to an S3 bucket. -
stopEventDataStoreIngestion(
{required String eventDataStore}) → Future< void> -
Stops the ingestion of live events on an event data store specified as
either an ARN or the ID portion of the ARN. To stop ingestion, the event
data store
Statusmust beENABLEDand theeventCategorymust beManagement,Data,NetworkActivity, orConfigurationItem. -
stopImport(
{required String importId}) → Future< StopImportResponse> - Stops a specified import.
-
stopLogging(
{required String name}) → Future< void> -
Suspends the recording of Amazon Web Services 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
InvalidHomeRegionExceptionwill occur. This operation cannot be called on the shadow trails (replicated trails in other Regions) of a trail enabled in all Regions. -
toString(
) → String -
A string representation of this object.
inherited
-
updateChannel(
{required String channel, List< Destination> ? destinations, String? name}) → Future<UpdateChannelResponse> - Updates a channel specified by a required channel ARN or UUID.
-
updateDashboard(
{required String dashboardId, RefreshSchedule? refreshSchedule, bool? terminationProtectionEnabled, List< RequestWidget> ? widgets}) → Future<UpdateDashboardResponse> - Updates the specified dashboard.
-
updateEventDataStore(
{required String eventDataStore, List< AdvancedEventSelector> ? advancedEventSelectors, BillingMode? billingMode, String? kmsKeyId, bool? multiRegionEnabled, String? name, bool? organizationEnabled, int? retentionPeriod, bool? terminationProtectionEnabled}) → Future<UpdateEventDataStoreResponse> -
Updates an event data store. The required
EventDataStorevalue is an ARN or the ID portion of the ARN. Other parameters are optional, but at least one optional parameter must be specified, or CloudTrail throws an error.RetentionPeriodis in days, and valid values are integers between 7 and 3653 if theBillingModeis set toEXTENDABLE_RETENTION_PRICING, or between 7 and 2557 ifBillingModeis set toFIXED_RETENTION_PRICING. By default,TerminationProtectionis enabled. -
updateTrail(
{required String name, String? cloudWatchLogsLogGroupArn, String? cloudWatchLogsRoleArn, bool? enableLogFileValidation, bool? includeGlobalServiceEvents, bool? isMultiRegionTrail, bool? isOrganizationTrail, String? kmsKeyId, String? s3BucketName, String? s3KeyPrefix, String? snsTopicName}) → Future< UpdateTrailResponse> -
Updates trail settings that control what events you are logging, and how
to handle 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.
UpdateTrailmust be called from the Region in which the trail was created; otherwise, anInvalidHomeRegionExceptionis thrown.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited