CloudTrailClient
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 Amazon Web Services API calls for your Amazon Web Services account and delivers log files to an Amazon S3 bucket. The recorded information includes the identity of the user, the start time of the Amazon Web Services 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 Amazon Web Services SDKs, which consist of libraries and sample code for various programming languages and platforms (Java, Ruby, .NET, iOS, Android, etc.). The SDKs provide programmatic access to CloudTrail. For example, the SDKs handle cryptographically signing requests, managing errors, and retrying requests automatically. For more information about the Amazon Web Services SDKs, including how to download and install them, see Tools to Build on Amazon Web Services.
See the CloudTrail User Guide for information about the data that is included with each Amazon Web Services API call listed in the log files.
Functions
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).
Cancels a query if the query is not in a terminated state, such as CANCELLED
, FAILED
, TIMED_OUT
, or FINISHED
. You must specify an ARN value for EventDataStore
. The ID of the query that you want to cancel is also required. When you run CancelQuery
, the query status might show as CANCELLED
even if the operation is not yet finished.
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.
Creates a custom dashboard or the Highlights dashboard.
Creates a new event data store.
Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket.
Deletes a channel.
Deletes the specified dashboard. You cannot delete a dashboard that has termination protection enabled.
Disables the event data store specified by EventDataStore
, which accepts an event data store ARN. After you run DeleteEventDataStore
, the event data store enters a PENDING_DELETION
state, and is automatically deleted after a wait period of seven days. TerminationProtectionEnabled
must be set to False
on the event data store and the FederationStatus
must be DISABLED
. You cannot delete an event data store if TerminationProtectionEnabled
is True
or the FederationStatus
is ENABLED
.
Deletes the resource-based policy attached to the CloudTrail event data store, dashboard, or channel.
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.
Removes CloudTrail delegated administrator permissions from a member account in an organization.
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.
Retrieves settings for one or more trails associated with the current Region for your account.
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.
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.
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.
Returns information about a specific channel.
Returns the specified dashboard.
Retrieves the current event configuration settings for the specified event data store, including details about maximum event size and context key selectors configured for the event data store.
Returns information about an event data store specified as either an ARN or the ID portion of the ARN.
Describes the settings for the event selectors that you configured for your trail. The information returned for your event selectors includes the following:
Returns information about a specific import.
Describes the settings for the Insights event selectors that you configured for your trail or event data store. GetInsightSelectors
shows if CloudTrail Insights event logging is enabled on the trail or event data store, and if it is, which Insights types are enabled. If you run GetInsightSelectors
on a trail or event data store that does not have Insights events enabled, the operation throws the exception InsightNotEnabledException
Gets event data results of a query. You must specify the QueryID
value returned by the StartQuery
operation.
Retrieves the JSON text of the resource-based policy document attached to the CloudTrail event data store, dashboard, or channel.
Returns settings information for a specified trail.
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.
Lists the channels in the current account, and their source names.
Returns information about all dashboards in the account, in the current Region.
Returns information about all event data stores in the account, in the current Region.
Returns a list of failures for the specified import.
Returns information on all imports, or a select set of imports by ImportStatus
or Destination
.
Returns Insights metrics data for trails that have enabled Insights. The request must include the EventSource
, EventName
, and InsightType
parameters.
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.
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 adding StartTime
and EndTime
parameters, and a QueryStatus
value. Valid values for QueryStatus
include QUEUED
, RUNNING
, FINISHED
, FAILED
, TIMED_OUT
, or CANCELLED
.
Lists the tags for the specified trails, event data stores, dashboards, or channels in the current Region.
Lists trails that are in the current account.
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.
Updates the event configuration settings for the specified event data store. You can update the maximum event size and context key selectors.
Configures event selectors (also referred to as basic event selectors) or advanced event selectors for your trail. You can use either AdvancedEventSelectors
or EventSelectors
, but not both. If you apply AdvancedEventSelectors
to a trail, any existing EventSelectors
are overwritten.
Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing trail or event data store. You also use PutInsightSelectors
to turn off Insights event logging, by passing an empty list of Insights types. The valid Insights event types are ApiErrorRateInsight
and ApiCallRateInsight
.
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.
Registers an organization’s member account as the CloudTrail delegated administrator.
Removes the specified tags from a trail, event data store, dashboard, or channel.
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.
Searches sample queries and returns a list of sample queries that are sorted by relevance. To search for sample queries, provide a natural language SearchPhrase
in English.
Starts a refresh of the specified dashboard.
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 Status
must be STOPPED_INGESTION
and the eventCategory
must be Management
, Data
, NetworkActivity
, or ConfigurationItem
.
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 CloudTrail
prefix and the prefixes inside the CloudTrail
prefix, 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 the S3LocationUri
. For more considerations about importing trail events, see Considerations for copying trail events in the CloudTrail User Guide.
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.
Starts a CloudTrail Lake query. Use the QueryStatement
parameter to provide your SQL query, enclosed in single quotation marks. Use the optional DeliveryS3Uri
parameter to deliver the query results to an S3 bucket.
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 Status
must be ENABLED
and the eventCategory
must be Management
, Data
, NetworkActivity
, or ConfigurationItem
.
Stops a specified import.
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 InvalidHomeRegionException
will occur. This operation cannot be called on the shadow trails (replicated trails in other Regions) of a trail enabled in all Regions.
Updates a channel specified by a required channel ARN or UUID.
Updates the specified dashboard.
Updates an event data store. The required EventDataStore
value 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. RetentionPeriod
is in days, and valid values are integers between 7 and 3653 if the BillingMode
is set to EXTENDABLE_RETENTION_PRICING
, or between 7 and 2557 if BillingMode
is set to FIXED_RETENTION_PRICING
. By default, TerminationProtection
is enabled.
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. UpdateTrail
must be called from the Region in which the trail was created; otherwise, an InvalidHomeRegionException
is thrown.
Inherited functions
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).
Cancels a query if the query is not in a terminated state, such as CANCELLED
, FAILED
, TIMED_OUT
, or FINISHED
. You must specify an ARN value for EventDataStore
. The ID of the query that you want to cancel is also required. When you run CancelQuery
, the query status might show as CANCELLED
even if the operation is not yet finished.
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.
Creates a custom dashboard or the Highlights dashboard.
Creates a new event data store.
Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket.
Deletes a channel.
Deletes the specified dashboard. You cannot delete a dashboard that has termination protection enabled.
Disables the event data store specified by EventDataStore
, which accepts an event data store ARN. After you run DeleteEventDataStore
, the event data store enters a PENDING_DELETION
state, and is automatically deleted after a wait period of seven days. TerminationProtectionEnabled
must be set to False
on the event data store and the FederationStatus
must be DISABLED
. You cannot delete an event data store if TerminationProtectionEnabled
is True
or the FederationStatus
is ENABLED
.
Deletes the resource-based policy attached to the CloudTrail event data store, dashboard, or channel.
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.
Removes CloudTrail delegated administrator permissions from a member account in an organization.
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.
Retrieves settings for one or more trails associated with the current Region for your account.
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.
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.
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.
Returns information about a specific channel.
Returns the specified dashboard.
Retrieves the current event configuration settings for the specified event data store, including details about maximum event size and context key selectors configured for the event data store.
Returns information about an event data store specified as either an ARN or the ID portion of the ARN.
Describes the settings for the event selectors that you configured for your trail. The information returned for your event selectors includes the following:
Returns information about a specific import.
Describes the settings for the Insights event selectors that you configured for your trail or event data store. GetInsightSelectors
shows if CloudTrail Insights event logging is enabled on the trail or event data store, and if it is, which Insights types are enabled. If you run GetInsightSelectors
on a trail or event data store that does not have Insights events enabled, the operation throws the exception InsightNotEnabledException
Gets event data results of a query. You must specify the QueryID
value returned by the StartQuery
operation.
Paginate over GetQueryResultsResponse results.
Retrieves the JSON text of the resource-based policy document attached to the CloudTrail event data store, dashboard, or channel.
Returns settings information for a specified trail.
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.
Lists the channels in the current account, and their source names.
Paginate over ListChannelsResponse results.
Returns information about all dashboards in the account, in the current Region.
Returns information about all event data stores in the account, in the current Region.
Paginate over ListEventDataStoresResponse results.
Returns a list of failures for the specified import.
Paginate over ListImportFailuresResponse results.
Returns information on all imports, or a select set of imports by ImportStatus
or Destination
.
Paginate over ListImportsResponse results.
Returns Insights metrics data for trails that have enabled Insights. The request must include the EventSource
, EventName
, and InsightType
parameters.
Paginate over ListInsightsMetricDataResponse results.
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.
Paginate over ListPublicKeysResponse results.
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 adding StartTime
and EndTime
parameters, and a QueryStatus
value. Valid values for QueryStatus
include QUEUED
, RUNNING
, FINISHED
, FAILED
, TIMED_OUT
, or CANCELLED
.
Paginate over ListQueriesResponse results.
Lists the tags for the specified trails, event data stores, dashboards, or channels in the current Region.
Paginate over ListTagsResponse results.
Lists trails that are in the current account.
Paginate over ListTrailsResponse results.
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.
Paginate over LookupEventsResponse results.
Updates the event configuration settings for the specified event data store. You can update the maximum event size and context key selectors.
Configures event selectors (also referred to as basic event selectors) or advanced event selectors for your trail. You can use either AdvancedEventSelectors
or EventSelectors
, but not both. If you apply AdvancedEventSelectors
to a trail, any existing EventSelectors
are overwritten.
Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing trail or event data store. You also use PutInsightSelectors
to turn off Insights event logging, by passing an empty list of Insights types. The valid Insights event types are ApiErrorRateInsight
and ApiCallRateInsight
.
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.
Registers an organization’s member account as the CloudTrail delegated administrator.
Removes the specified tags from a trail, event data store, dashboard, or channel.
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.
Searches sample queries and returns a list of sample queries that are sorted by relevance. To search for sample queries, provide a natural language SearchPhrase
in English.
Starts a refresh of the specified dashboard.
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 Status
must be STOPPED_INGESTION
and the eventCategory
must be Management
, Data
, NetworkActivity
, or ConfigurationItem
.
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 CloudTrail
prefix and the prefixes inside the CloudTrail
prefix, 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 the S3LocationUri
. For more considerations about importing trail events, see Considerations for copying trail events in the CloudTrail User Guide.
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.
Starts a CloudTrail Lake query. Use the QueryStatement
parameter to provide your SQL query, enclosed in single quotation marks. Use the optional DeliveryS3Uri
parameter to deliver the query results to an S3 bucket.
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 Status
must be ENABLED
and the eventCategory
must be Management
, Data
, NetworkActivity
, or ConfigurationItem
.
Stops a specified import.
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 InvalidHomeRegionException
will occur. This operation cannot be called on the shadow trails (replicated trails in other Regions) of a trail enabled in all Regions.
Updates a channel specified by a required channel ARN or UUID.
Updates the specified dashboard.
Updates an event data store. The required EventDataStore
value 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. RetentionPeriod
is in days, and valid values are integers between 7 and 3653 if the BillingMode
is set to EXTENDABLE_RETENTION_PRICING
, or between 7 and 2557 if BillingMode
is set to FIXED_RETENTION_PRICING
. By default, TerminationProtection
is enabled.
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. UpdateTrail
must be called from the Region in which the trail was created; otherwise, an InvalidHomeRegionException
is thrown.
Create a copy of the client with one or more configuration values overridden. This method allows the caller to perform scoped config overrides for one or more client operations.