Documentation ¶
Overview ¶
Package keyspaces provides the API client, operations, and parameter types for Amazon Keyspaces.
Amazon Keyspaces (for Apache Cassandra) is a scalable, highly available, and managed Apache Cassandra-compatible database service. Amazon Keyspaces makes it easy to migrate, run, and scale Cassandra workloads in the Amazon Web Services Cloud. With just a few clicks on the Amazon Web Services Management Console or a few lines of code, you can create keyspaces and tables in Amazon Keyspaces, without deploying any infrastructure or installing software.
In addition to supporting Cassandra Query Language (CQL) requests via open-source Cassandra drivers, Amazon Keyspaces supports data definition language (DDL) operations to manage keyspaces and tables using the Amazon Web Services SDK and CLI, as well as infrastructure as code (IaC) services and tools such as CloudFormation and Terraform. This API reference describes the supported DDL operations in detail.
For the list of all supported CQL APIs, see Supported Cassandra APIs, operations, and data types in Amazon Keyspaces in the Amazon Keyspaces Developer Guide.
To learn how Amazon Keyspaces API actions are recorded with CloudTrail, see Amazon Keyspaces information in CloudTrail in the Amazon Keyspaces Developer Guide.
For more information about Amazon Web Services APIs, for example how to implement retry logic or how to sign Amazon Web Services API requests, see Amazon Web Services APIsin the General Reference.
Index ¶
- Constants
- func NewDefaultEndpointResolver() *internalendpoints.Resolver
- func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options)
- func WithEndpointResolver(v EndpointResolver) func(*Options)deprecated
- func WithEndpointResolverV2(v EndpointResolverV2) func(*Options)
- func WithSigV4SigningName(name string) func(*Options)
- func WithSigV4SigningRegion(region string) func(*Options)
- type AuthResolverParameters
- type AuthSchemeResolver
- type Client
- func (c *Client) CreateKeyspace(ctx context.Context, params *CreateKeyspaceInput, optFns ...func(*Options)) (*CreateKeyspaceOutput, error)
- func (c *Client) CreateTable(ctx context.Context, params *CreateTableInput, optFns ...func(*Options)) (*CreateTableOutput, error)
- func (c *Client) DeleteKeyspace(ctx context.Context, params *DeleteKeyspaceInput, optFns ...func(*Options)) (*DeleteKeyspaceOutput, error)
- func (c *Client) DeleteTable(ctx context.Context, params *DeleteTableInput, optFns ...func(*Options)) (*DeleteTableOutput, error)
- func (c *Client) GetKeyspace(ctx context.Context, params *GetKeyspaceInput, optFns ...func(*Options)) (*GetKeyspaceOutput, error)
- func (c *Client) GetTable(ctx context.Context, params *GetTableInput, optFns ...func(*Options)) (*GetTableOutput, error)
- func (c *Client) GetTableAutoScalingSettings(ctx context.Context, params *GetTableAutoScalingSettingsInput, ...) (*GetTableAutoScalingSettingsOutput, error)
- func (c *Client) ListKeyspaces(ctx context.Context, params *ListKeyspacesInput, optFns ...func(*Options)) (*ListKeyspacesOutput, error)
- func (c *Client) ListTables(ctx context.Context, params *ListTablesInput, optFns ...func(*Options)) (*ListTablesOutput, error)
- func (c *Client) ListTagsForResource(ctx context.Context, params *ListTagsForResourceInput, ...) (*ListTagsForResourceOutput, error)
- func (c *Client) Options() Options
- func (c *Client) RestoreTable(ctx context.Context, params *RestoreTableInput, optFns ...func(*Options)) (*RestoreTableOutput, error)
- func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error)
- func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, optFns ...func(*Options)) (*UntagResourceOutput, error)
- func (c *Client) UpdateTable(ctx context.Context, params *UpdateTableInput, optFns ...func(*Options)) (*UpdateTableOutput, error)
- type CreateKeyspaceInput
- type CreateKeyspaceOutput
- type CreateTableInput
- type CreateTableOutput
- type DeleteKeyspaceInput
- type DeleteKeyspaceOutput
- type DeleteTableInput
- type DeleteTableOutput
- type EndpointParameters
- type EndpointResolver
- type EndpointResolverFunc
- type EndpointResolverOptions
- type EndpointResolverV2
- type GetKeyspaceInput
- type GetKeyspaceOutput
- type GetTableAutoScalingSettingsInput
- type GetTableAutoScalingSettingsOutput
- type GetTableInput
- type GetTableOutput
- type HTTPClient
- type HTTPSignerV4
- type ListKeyspacesAPIClient
- type ListKeyspacesInput
- type ListKeyspacesOutput
- type ListKeyspacesPaginator
- type ListKeyspacesPaginatorOptions
- type ListTablesAPIClient
- type ListTablesInput
- type ListTablesOutput
- type ListTablesPaginator
- type ListTablesPaginatorOptions
- type ListTagsForResourceAPIClient
- type ListTagsForResourceInput
- type ListTagsForResourceOutput
- type ListTagsForResourcePaginator
- type ListTagsForResourcePaginatorOptions
- type Options
- type ResolveEndpoint
- type RestoreTableInput
- type RestoreTableOutput
- type TagResourceInput
- type TagResourceOutput
- type UntagResourceInput
- type UntagResourceOutput
- type UpdateTableInput
- type UpdateTableOutput
Constants ¶
const ServiceAPIVersion = "2022-02-10"
const ServiceID = "Keyspaces"
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
deprecated
func WithEndpointResolver(v EndpointResolver) func(*Options)
Deprecated: EndpointResolver and WithEndpointResolver. Providing a value for this field will likely prevent you from using any endpoint-related service features released after the introduction of EndpointResolverV2 and BaseEndpoint.
To migrate an EndpointResolver implementation that uses a custom endpoint, set the client option BaseEndpoint instead.
func WithEndpointResolverV2 ¶
func WithEndpointResolverV2(v EndpointResolverV2) func(*Options)
WithEndpointResolverV2 returns a functional option for setting the Client's EndpointResolverV2 option.
func WithSigV4SigningName ¶
WithSigV4SigningName applies an override to the authentication workflow to use the given signing name for SigV4-authenticated operations.
This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing name from both auth scheme resolution and endpoint resolution.
func WithSigV4SigningRegion ¶
WithSigV4SigningRegion applies an override to the authentication workflow to use the given signing region for SigV4-authenticated operations.
This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing region from both auth scheme resolution and endpoint resolution.
Types ¶
type AuthResolverParameters ¶
type AuthResolverParameters struct { // The name of the operation being invoked. Operation string // The region in which the operation is being invoked. Region string }
AuthResolverParameters contains the set of inputs necessary for auth scheme resolution.
type AuthSchemeResolver ¶
type AuthSchemeResolver interface {
ResolveAuthSchemes(context.Context, *AuthResolverParameters) ([]*smithyauth.Option, error)
}
AuthSchemeResolver returns a set of possible authentication options for an operation.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client provides the API client to make operations call for Amazon Keyspaces.
func New ¶
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 ¶
NewFromConfig returns a new client from the provided config.
func (*Client) CreateKeyspace ¶
func (c *Client) CreateKeyspace(ctx context.Context, params *CreateKeyspaceInput, optFns ...func(*Options)) (*CreateKeyspaceOutput, error)
The CreateKeyspace operation adds a new keyspace to your account. In an Amazon Web Services account, keyspace names must be unique within each Region.
CreateKeyspace is an asynchronous operation. You can monitor the creation status of the new keyspace by using the GetKeyspace operation.
For more information, see Creating keyspaces in the Amazon Keyspaces Developer Guide.
func (*Client) CreateTable ¶
func (c *Client) CreateTable(ctx context.Context, params *CreateTableInput, optFns ...func(*Options)) (*CreateTableOutput, error)
The CreateTable operation adds a new table to the specified keyspace. Within a keyspace, table names must be unique.
CreateTable is an asynchronous operation. When the request is received, the status of the table is set to CREATING . You can monitor the creation status of the new table by using the GetTable operation, which returns the current status of the table. You can start using a table when the status is ACTIVE .
For more information, see Creating tables in the Amazon Keyspaces Developer Guide.
func (*Client) DeleteKeyspace ¶
func (c *Client) DeleteKeyspace(ctx context.Context, params *DeleteKeyspaceInput, optFns ...func(*Options)) (*DeleteKeyspaceOutput, error)
The DeleteKeyspace operation deletes a keyspace and all of its tables.
func (*Client) DeleteTable ¶
func (c *Client) DeleteTable(ctx context.Context, params *DeleteTableInput, optFns ...func(*Options)) (*DeleteTableOutput, error)
The DeleteTable operation deletes a table and all of its data. After a DeleteTable request is received, the specified table is in the DELETING state until Amazon Keyspaces completes the deletion. If the table is in the ACTIVE state, you can delete it. If a table is either in the CREATING or UPDATING states, then Amazon Keyspaces returns a ResourceInUseException . If the specified table does not exist, Amazon Keyspaces returns a ResourceNotFoundException . If the table is already in the DELETING state, no error is returned.
func (*Client) GetKeyspace ¶
func (c *Client) GetKeyspace(ctx context.Context, params *GetKeyspaceInput, optFns ...func(*Options)) (*GetKeyspaceOutput, error)
Returns the name and the Amazon Resource Name (ARN) of the specified table.
func (*Client) GetTable ¶
func (c *Client) GetTable(ctx context.Context, params *GetTableInput, optFns ...func(*Options)) (*GetTableOutput, error)
Returns information about the table, including the table's name and current status, the keyspace name, configuration settings, and metadata.
To read table metadata using GetTable , Select action permissions for the table and system tables are required to complete the operation.
func (*Client) GetTableAutoScalingSettings ¶
func (c *Client) GetTableAutoScalingSettings(ctx context.Context, params *GetTableAutoScalingSettingsInput, optFns ...func(*Options)) (*GetTableAutoScalingSettingsOutput, error)
Returns auto scaling related settings of the specified table in JSON format. If the table is a multi-Region table, the Amazon Web Services Region specific auto scaling settings of the table are included.
Amazon Keyspaces auto scaling helps you provision throughput capacity for variable workloads efficiently by increasing and decreasing your table's read and write capacity automatically in response to application traffic. For more information, see Managing throughput capacity automatically with Amazon Keyspaces auto scalingin the Amazon Keyspaces Developer Guide.
GetTableAutoScalingSettings can't be used as an action in an IAM policy.
To define permissions for GetTableAutoScalingSettings , you must allow the following two actions in the IAM policy statement's Action element:
application-autoscaling:DescribeScalableTargets
application-autoscaling:DescribeScalingPolicies
func (*Client) ListKeyspaces ¶
func (c *Client) ListKeyspaces(ctx context.Context, params *ListKeyspacesInput, optFns ...func(*Options)) (*ListKeyspacesOutput, error)
Returns a list of keyspaces.
func (*Client) ListTables ¶
func (c *Client) ListTables(ctx context.Context, params *ListTablesInput, optFns ...func(*Options)) (*ListTablesOutput, error)
Returns a list of tables for a specified keyspace.
func (*Client) ListTagsForResource ¶
func (c *Client) ListTagsForResource(ctx context.Context, params *ListTagsForResourceInput, optFns ...func(*Options)) (*ListTagsForResourceOutput, error)
Returns a list of all tags associated with the specified Amazon Keyspaces resource.
func (*Client) Options ¶
Options returns a copy of the client configuration.
Callers SHOULD NOT perform mutations on any inner structures within client config. Config overrides should instead be made on a per-operation basis through functional options.
func (*Client) RestoreTable ¶
func (c *Client) RestoreTable(ctx context.Context, params *RestoreTableInput, optFns ...func(*Options)) (*RestoreTableOutput, error)
Restores the table to the specified point in time within the earliest_restorable_timestamp and the current time. For more information about restore points, see Time window for PITR continuous backupsin the Amazon Keyspaces Developer Guide.
Any number of users can execute up to 4 concurrent restores (any type of restore) in a given account.
When you restore using point in time recovery, Amazon Keyspaces restores your source table's schema and data to the state based on the selected timestamp (day:hour:minute:second) to a new table. The Time to Live (TTL) settings are also restored to the state based on the selected timestamp.
In addition to the table's schema, data, and TTL settings, RestoreTable restores the capacity mode, auto scaling settings, encryption settings, and point-in-time recovery settings from the source table. Unlike the table's schema data and TTL settings, which are restored based on the selected timestamp, these settings are always restored based on the table's settings as of the current time or when the table was deleted.
You can also overwrite these settings during restore:
Read/write capacity mode
Provisioned throughput capacity units
Auto scaling settings
Point-in-time (PITR) settings
Tags
For more information, see PITR restore settings in the Amazon Keyspaces Developer Guide.
Note that the following settings are not restored, and you must configure them manually for the new table:
Identity and Access Management (IAM) policies
Amazon CloudWatch metrics and alarms
func (*Client) TagResource ¶
func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error)
Associates a set of tags with a Amazon Keyspaces resource. You can then activate these user-defined tags so that they appear on the Cost Management Console for cost allocation tracking. For more information, see Adding tags and labels to Amazon Keyspaces resourcesin the Amazon Keyspaces Developer Guide.
For IAM policy examples that show how to control access to Amazon Keyspaces resources based on tags, see Amazon Keyspaces resource access based on tagsin the Amazon Keyspaces Developer Guide.
func (*Client) UntagResource ¶
func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, optFns ...func(*Options)) (*UntagResourceOutput, error)
Removes the association of tags from a Amazon Keyspaces resource.
func (*Client) UpdateTable ¶
func (c *Client) UpdateTable(ctx context.Context, params *UpdateTableInput, optFns ...func(*Options)) (*UpdateTableOutput, error)
Adds new columns to the table or updates one of the table's settings, for example capacity mode, auto scaling, encryption, point-in-time recovery, or ttl settings. Note that you can only update one specific table setting per update operation.
type CreateKeyspaceInput ¶
type CreateKeyspaceInput struct { // The name of the keyspace to be created. // // This member is required. KeyspaceName *string // The replication specification of the keyspace includes: // // - replicationStrategy - the required value is SINGLE_REGION or MULTI_REGION . // // - regionList - if the replicationStrategy is MULTI_REGION , the regionList // requires the current Region and at least one additional Amazon Web Services // Region where the keyspace is going to be replicated in. The maximum number of // supported replication Regions including the current Region is six. ReplicationSpecification *types.ReplicationSpecification // A list of key-value pair tags to be attached to the keyspace. // // For more information, see [Adding tags and labels to Amazon Keyspaces resources] in the Amazon Keyspaces Developer Guide. // // [Adding tags and labels to Amazon Keyspaces resources]: https://docs.aws.amazon.com/keyspaces/latest/devguide/tagging-keyspaces.html Tags []types.Tag // contains filtered or unexported fields }
type CreateKeyspaceOutput ¶
type CreateKeyspaceOutput struct { // The unique identifier of the keyspace in the format of an Amazon Resource Name // (ARN). // // This member is required. ResourceArn *string // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type CreateTableInput ¶
type CreateTableInput struct { // The name of the keyspace that the table is going to be created in. // // This member is required. KeyspaceName *string // The schemaDefinition consists of the following parameters. // // For each column to be created: // // - name - The name of the column. // // - type - An Amazon Keyspaces data type. For more information, see [Data types]in the // Amazon Keyspaces Developer Guide. // // The primary key of the table consists of the following columns: // // - partitionKeys - The partition key can be a single column, or it can be a // compound value composed of two or more columns. The partition key portion of the // primary key is required and determines how Amazon Keyspaces stores your data. // // - name - The name of each partition key column. // // - clusteringKeys - The optional clustering column portion of your primary key // determines how the data is clustered and sorted within each partition. // // - name - The name of the clustering column. // // - orderBy - Sets the ascendant ( ASC ) or descendant ( DESC ) order modifier. // // To define a column as static use staticColumns - Static columns store values // that are shared by all rows in the same partition: // // - name - The name of the column. // // - type - An Amazon Keyspaces data type. // // [Data types]: https://docs.aws.amazon.com/keyspaces/latest/devguide/cql.elements.html#cql.data-types // // This member is required. SchemaDefinition *types.SchemaDefinition // The name of the table. // // This member is required. TableName *string // The optional auto scaling settings for a table in provisioned capacity mode. // Specifies if the service can manage throughput capacity automatically on your // behalf. // // Auto scaling helps you provision throughput capacity for variable workloads // efficiently by increasing and decreasing your table's read and write capacity // automatically in response to application traffic. For more information, see [Managing throughput capacity automatically with Amazon Keyspaces auto scaling]in // the Amazon Keyspaces Developer Guide. // // By default, auto scaling is disabled for a table. // // [Managing throughput capacity automatically with Amazon Keyspaces auto scaling]: https://docs.aws.amazon.com/keyspaces/latest/devguide/autoscaling.html AutoScalingSpecification *types.AutoScalingSpecification // Specifies the read/write throughput capacity mode for the table. The options // are: // // - throughputMode:PAY_PER_REQUEST and // // - throughputMode:PROVISIONED - Provisioned capacity mode requires // readCapacityUnits and writeCapacityUnits as input. // // The default is throughput_mode:PAY_PER_REQUEST . // // For more information, see [Read/write capacity modes] in the Amazon Keyspaces Developer Guide. // // [Read/write capacity modes]: https://docs.aws.amazon.com/keyspaces/latest/devguide/ReadWriteCapacityMode.html CapacitySpecification *types.CapacitySpecification // Enables client-side timestamps for the table. By default, the setting is // disabled. You can enable client-side timestamps with the following option: // // - status: "enabled" // // Once client-side timestamps are enabled for a table, this setting cannot be // disabled. ClientSideTimestamps *types.ClientSideTimestamps // This parameter allows to enter a description of the table. Comment *types.Comment // The default Time to Live setting in seconds for the table. // // For more information, see [Setting the default TTL value for a table] in the Amazon Keyspaces Developer Guide. // // [Setting the default TTL value for a table]: https://docs.aws.amazon.com/keyspaces/latest/devguide/TTL-how-it-works.html#ttl-howitworks_default_ttl DefaultTimeToLive *int32 // Specifies how the encryption key for encryption at rest is managed for the // table. You can choose one of the following KMS key (KMS key): // // - type:AWS_OWNED_KMS_KEY - This key is owned by Amazon Keyspaces. // // - type:CUSTOMER_MANAGED_KMS_KEY - This key is stored in your account and is // created, owned, and managed by you. This option requires the // kms_key_identifier of the KMS key in Amazon Resource Name (ARN) format as // input. // // The default is type:AWS_OWNED_KMS_KEY . // // For more information, see [Encryption at rest] in the Amazon Keyspaces Developer Guide. // // [Encryption at rest]: https://docs.aws.amazon.com/keyspaces/latest/devguide/EncryptionAtRest.html EncryptionSpecification *types.EncryptionSpecification // Specifies if pointInTimeRecovery is enabled or disabled for the table. The // options are: // // - status=ENABLED // // - status=DISABLED // // If it's not specified, the default is status=DISABLED . // // For more information, see [Point-in-time recovery] in the Amazon Keyspaces Developer Guide. // // [Point-in-time recovery]: https://docs.aws.amazon.com/keyspaces/latest/devguide/PointInTimeRecovery.html PointInTimeRecovery *types.PointInTimeRecovery // The optional Amazon Web Services Region specific settings of a multi-Region // table. These settings overwrite the general settings of the table for the // specified Region. // // For a multi-Region table in provisioned capacity mode, you can configure the // table's read capacity differently for each Region's replica. The write capacity, // however, remains synchronized between all replicas to ensure that there's enough // capacity to replicate writes across all Regions. To define the read capacity for // a table replica in a specific Region, you can do so by configuring the following // parameters. // // - region : The Region where these settings are applied. (Required) // // - readCapacityUnits : The provisioned read capacity units. (Optional) // // - readCapacityAutoScaling : The read capacity auto scaling settings for the // table. (Optional) ReplicaSpecifications []types.ReplicaSpecification // A list of key-value pair tags to be attached to the resource. // // For more information, see [Adding tags and labels to Amazon Keyspaces resources] in the Amazon Keyspaces Developer Guide. // // [Adding tags and labels to Amazon Keyspaces resources]: https://docs.aws.amazon.com/keyspaces/latest/devguide/tagging-keyspaces.html Tags []types.Tag // Enables Time to Live custom settings for the table. The options are: // // - status:enabled // // - status:disabled // // The default is status:disabled . After ttl is enabled, you can't disable it for // the table. // // For more information, see [Expiring data by using Amazon Keyspaces Time to Live (TTL)] in the Amazon Keyspaces Developer Guide. // // [Expiring data by using Amazon Keyspaces Time to Live (TTL)]: https://docs.aws.amazon.com/keyspaces/latest/devguide/TTL.html Ttl *types.TimeToLive // contains filtered or unexported fields }
type CreateTableOutput ¶
type CreateTableOutput struct { // The unique identifier of the table in the format of an Amazon Resource Name // (ARN). // // This member is required. ResourceArn *string // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type DeleteKeyspaceInput ¶
type DeleteKeyspaceInput struct { // The name of the keyspace to be deleted. // // This member is required. KeyspaceName *string // contains filtered or unexported fields }
type DeleteKeyspaceOutput ¶
type DeleteKeyspaceOutput struct { // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type DeleteTableInput ¶
type DeleteTableOutput ¶
type DeleteTableOutput struct { // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type EndpointParameters ¶
type EndpointParameters struct { // The AWS region used to dispatch the request. // // Parameter is // required. // // AWS::Region Region *string // When true, use the dual-stack endpoint. If the configured endpoint does not // support dual-stack, dispatching the request MAY return an error. // // Defaults to // false if no value is provided. // // AWS::UseDualStack UseDualStack *bool // When true, send this request to the FIPS-compliant regional endpoint. If the // configured endpoint does not have a FIPS compliant endpoint, dispatching the // request will return an error. // // Defaults to false if no value is // provided. // // AWS::UseFIPS UseFIPS *bool // Override the endpoint used to send this request // // Parameter is // required. // // SDK::Endpoint Endpoint *string }
EndpointParameters provides the parameters that influence how endpoints are resolved.
func (EndpointParameters) ValidateRequired ¶
func (p EndpointParameters) ValidateRequired() error
ValidateRequired validates required parameters are set.
func (EndpointParameters) WithDefaults ¶
func (p EndpointParameters) WithDefaults() EndpointParameters
WithDefaults returns a shallow copy of EndpointParameterswith default values applied to members where applicable.
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 EndpointResolverV2 ¶
type EndpointResolverV2 interface { // ResolveEndpoint attempts to resolve the endpoint with the provided options, // returning the endpoint if found. Otherwise an error is returned. ResolveEndpoint(ctx context.Context, params EndpointParameters) ( smithyendpoints.Endpoint, error, ) }
EndpointResolverV2 provides the interface for resolving service endpoints.
func NewDefaultEndpointResolverV2 ¶
func NewDefaultEndpointResolverV2() EndpointResolverV2
type GetKeyspaceInput ¶
type GetKeyspaceInput struct { // The name of the keyspace. // // This member is required. KeyspaceName *string // contains filtered or unexported fields }
type GetKeyspaceOutput ¶
type GetKeyspaceOutput struct { // The name of the keyspace. // // This member is required. KeyspaceName *string // Returns the replication strategy of the keyspace. The options are SINGLE_REGION // or MULTI_REGION . // // This member is required. ReplicationStrategy types.Rs // Returns the ARN of the keyspace. // // This member is required. ResourceArn *string // If the replicationStrategy of the keyspace is MULTI_REGION , a list of // replication Regions is returned. ReplicationRegions []string // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type GetTableAutoScalingSettingsInput ¶
type GetTableAutoScalingSettingsOutput ¶
type GetTableAutoScalingSettingsOutput struct { // The name of the keyspace. // // This member is required. KeyspaceName *string // The Amazon Resource Name (ARN) of the table. // // This member is required. ResourceArn *string // The name of the table. // // This member is required. TableName *string // The auto scaling settings of the table. AutoScalingSpecification *types.AutoScalingSpecification // The Amazon Web Services Region specific settings of a multi-Region table. // Returns the settings for all Regions the table is replicated in. ReplicaSpecifications []types.ReplicaAutoScalingSpecification // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type GetTableInput ¶
type GetTableOutput ¶
type GetTableOutput struct { // The name of the keyspace that the specified table is stored in. // // This member is required. KeyspaceName *string // The Amazon Resource Name (ARN) of the specified table. // // This member is required. ResourceArn *string // The name of the specified table. // // This member is required. TableName *string // The read/write throughput capacity mode for a table. The options are: // // - throughputMode:PAY_PER_REQUEST // // - throughputMode:PROVISIONED CapacitySpecification *types.CapacitySpecificationSummary // The client-side timestamps setting of the table. ClientSideTimestamps *types.ClientSideTimestamps // The the description of the specified table. Comment *types.Comment // The creation timestamp of the specified table. CreationTimestamp *time.Time // The default Time to Live settings in seconds of the specified table. DefaultTimeToLive *int32 // The encryption settings of the specified table. EncryptionSpecification *types.EncryptionSpecification // The point-in-time recovery status of the specified table. PointInTimeRecovery *types.PointInTimeRecoverySummary // Returns the Amazon Web Services Region specific settings of all Regions a // multi-Region table is replicated in. ReplicaSpecifications []types.ReplicaSpecificationSummary // The schema definition of the specified table. SchemaDefinition *types.SchemaDefinition // The current status of the specified table. Status types.TableStatus // The custom Time to Live settings of the specified table. Ttl *types.TimeToLive // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type HTTPSignerV4 ¶
type ListKeyspacesAPIClient ¶
type ListKeyspacesAPIClient interface {
ListKeyspaces(context.Context, *ListKeyspacesInput, ...func(*Options)) (*ListKeyspacesOutput, error)
}
ListKeyspacesAPIClient is a client that implements the ListKeyspaces operation.
type ListKeyspacesInput ¶
type ListKeyspacesInput struct { // The total number of keyspaces to return in the output. If the total number of // keyspaces available is more than the value specified, a NextToken is provided // in the output. To resume pagination, provide the NextToken value as an argument // of a subsequent API invocation. MaxResults *int32 // The pagination token. To resume pagination, provide the NextToken value as // argument of a subsequent API invocation. NextToken *string // contains filtered or unexported fields }
type ListKeyspacesOutput ¶
type ListKeyspacesOutput struct { // A list of keyspaces. // // This member is required. Keyspaces []types.KeyspaceSummary // A token to specify where to start paginating. This is the NextToken from a // previously truncated response. NextToken *string // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type ListKeyspacesPaginator ¶
type ListKeyspacesPaginator struct {
// contains filtered or unexported fields
}
ListKeyspacesPaginator is a paginator for ListKeyspaces
func NewListKeyspacesPaginator ¶
func NewListKeyspacesPaginator(client ListKeyspacesAPIClient, params *ListKeyspacesInput, optFns ...func(*ListKeyspacesPaginatorOptions)) *ListKeyspacesPaginator
NewListKeyspacesPaginator returns a new ListKeyspacesPaginator
func (*ListKeyspacesPaginator) HasMorePages ¶
func (p *ListKeyspacesPaginator) HasMorePages() bool
HasMorePages returns a boolean indicating whether more pages are available
func (*ListKeyspacesPaginator) NextPage ¶
func (p *ListKeyspacesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListKeyspacesOutput, error)
NextPage retrieves the next ListKeyspaces page.
type ListKeyspacesPaginatorOptions ¶
type ListKeyspacesPaginatorOptions struct { // The total number of keyspaces to return in the output. If the total number of // keyspaces available is more than the value specified, a NextToken is provided // in the output. To resume pagination, provide the NextToken value as an argument // of a subsequent API invocation. 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 }
ListKeyspacesPaginatorOptions is the paginator options for ListKeyspaces
type ListTablesAPIClient ¶
type ListTablesAPIClient interface {
ListTables(context.Context, *ListTablesInput, ...func(*Options)) (*ListTablesOutput, error)
}
ListTablesAPIClient is a client that implements the ListTables operation.
type ListTablesInput ¶
type ListTablesInput struct { // The name of the keyspace. // // This member is required. KeyspaceName *string // The total number of tables to return in the output. If the total number of // tables available is more than the value specified, a NextToken is provided in // the output. To resume pagination, provide the NextToken value as an argument of // a subsequent API invocation. MaxResults *int32 // The pagination token. To resume pagination, provide the NextToken value as an // argument of a subsequent API invocation. NextToken *string // contains filtered or unexported fields }
type ListTablesOutput ¶
type ListTablesOutput struct { // A token to specify where to start paginating. This is the NextToken from a // previously truncated response. NextToken *string // A list of tables. Tables []types.TableSummary // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type ListTablesPaginator ¶
type ListTablesPaginator struct {
// contains filtered or unexported fields
}
ListTablesPaginator is a paginator for ListTables
func NewListTablesPaginator ¶
func NewListTablesPaginator(client ListTablesAPIClient, params *ListTablesInput, optFns ...func(*ListTablesPaginatorOptions)) *ListTablesPaginator
NewListTablesPaginator returns a new ListTablesPaginator
func (*ListTablesPaginator) HasMorePages ¶
func (p *ListTablesPaginator) HasMorePages() bool
HasMorePages returns a boolean indicating whether more pages are available
func (*ListTablesPaginator) NextPage ¶
func (p *ListTablesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListTablesOutput, error)
NextPage retrieves the next ListTables page.
type ListTablesPaginatorOptions ¶
type ListTablesPaginatorOptions struct { // The total number of tables to return in the output. If the total number of // tables available is more than the value specified, a NextToken is provided in // the output. To resume pagination, provide the NextToken value as an argument of // a subsequent API invocation. 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 }
ListTablesPaginatorOptions is the paginator options for ListTables
type ListTagsForResourceAPIClient ¶
type ListTagsForResourceAPIClient interface {
ListTagsForResource(context.Context, *ListTagsForResourceInput, ...func(*Options)) (*ListTagsForResourceOutput, error)
}
ListTagsForResourceAPIClient is a client that implements the ListTagsForResource operation.
type ListTagsForResourceInput ¶
type ListTagsForResourceInput struct { // The Amazon Resource Name (ARN) of the Amazon Keyspaces resource. // // This member is required. ResourceArn *string // The total number of tags to return in the output. If the total number of tags // available is more than the value specified, a NextToken is provided in the // output. To resume pagination, provide the NextToken value as an argument of a // subsequent API invocation. MaxResults *int32 // The pagination token. To resume pagination, provide the NextToken value as // argument of a subsequent API invocation. NextToken *string // contains filtered or unexported fields }
type ListTagsForResourceOutput ¶
type ListTagsForResourceOutput struct { // A token to specify where to start paginating. This is the NextToken from a // previously truncated response. NextToken *string // A list of tags. Tags []types.Tag // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type ListTagsForResourcePaginator ¶
type ListTagsForResourcePaginator struct {
// contains filtered or unexported fields
}
ListTagsForResourcePaginator is a paginator for ListTagsForResource
func NewListTagsForResourcePaginator ¶
func NewListTagsForResourcePaginator(client ListTagsForResourceAPIClient, params *ListTagsForResourceInput, optFns ...func(*ListTagsForResourcePaginatorOptions)) *ListTagsForResourcePaginator
NewListTagsForResourcePaginator returns a new ListTagsForResourcePaginator
func (*ListTagsForResourcePaginator) HasMorePages ¶
func (p *ListTagsForResourcePaginator) HasMorePages() bool
HasMorePages returns a boolean indicating whether more pages are available
func (*ListTagsForResourcePaginator) NextPage ¶
func (p *ListTagsForResourcePaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListTagsForResourceOutput, error)
NextPage retrieves the next ListTagsForResource page.
type ListTagsForResourcePaginatorOptions ¶
type ListTagsForResourcePaginatorOptions struct { // The total number of tags to return in the output. If the total number of tags // available is more than the value specified, a NextToken is provided in the // output. To resume pagination, provide the NextToken value as an argument of a // subsequent API invocation. 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 }
ListTagsForResourcePaginatorOptions is the paginator options for ListTagsForResource
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 // The optional application specific identifier appended to the User-Agent header. AppID string // This endpoint will be given as input to an EndpointResolverV2. It is used for // providing a custom base endpoint that is subject to modifications by the // processing EndpointResolverV2. BaseEndpoint *string // 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 configuration DefaultsMode that the SDK should use when constructing the // clients initial default settings. DefaultsMode aws.DefaultsMode // The endpoint options to be used when attempting to resolve an endpoint. EndpointOptions EndpointResolverOptions // The service endpoint resolver. // // Deprecated: Deprecated: EndpointResolver and WithEndpointResolver. Providing a // value for this field will likely prevent you from using any endpoint-related // service features released after the introduction of EndpointResolverV2 and // BaseEndpoint. // // To migrate an EndpointResolver implementation that uses a custom endpoint, set // the client option BaseEndpoint instead. EndpointResolver EndpointResolver // Resolves the endpoint used for a particular service operation. This should be // used over the deprecated EndpointResolver. EndpointResolverV2 EndpointResolverV2 // 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 // RetryMaxAttempts specifies the maximum number attempts an API client will call // an operation that fails with a retryable error. A value of 0 is ignored, and // will not be used to configure the API client created default retryer, or modify // per operation call's retry max attempts. // // If specified in an operation call's functional options with a value that is // different than the constructed client's Options, the Client's Retryer will be // wrapped to use the operation's specific RetryMaxAttempts value. RetryMaxAttempts int // RetryMode specifies the retry mode the API client will be created with, if // Retryer option is not also specified. // // When creating a new API Clients this member will only be used if the Retryer // Options member is nil. This value will be ignored if Retryer is not nil. // // Currently does not support per operation call overrides, may in the future. RetryMode aws.RetryMode // Retryer guides how HTTP requests should be retried in case of recoverable // failures. When nil the API client will use a default retryer. The kind of // default retry created by the API client can be changed with the RetryMode // option. Retryer aws.Retryer // The RuntimeEnvironment configuration, only populated if the DefaultsMode is set // to DefaultsModeAuto and is initialized using config.LoadDefaultConfig . You // should not populate this structure programmatically, or rely on the values here // within your applications. RuntimeEnvironment aws.RuntimeEnvironment // The HTTP client to invoke API calls with. Defaults to client's default HTTP // implementation if nil. HTTPClient HTTPClient // The auth scheme resolver which determines how to authenticate for each // operation. AuthSchemeResolver AuthSchemeResolver // The list of auth schemes supported by the client. AuthSchemes []smithyhttp.AuthScheme // contains filtered or unexported fields }
func (Options) Copy ¶
Copy creates a clone where the APIOptions list is deep copied.
func (Options) GetIdentityResolver ¶
func (o Options) GetIdentityResolver(schemeID string) smithyauth.IdentityResolver
type ResolveEndpoint ¶
type ResolveEndpoint struct { Resolver EndpointResolver Options EndpointResolverOptions }
func (*ResolveEndpoint) HandleSerialize ¶
func (m *ResolveEndpoint) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, )
func (*ResolveEndpoint) ID ¶
func (*ResolveEndpoint) ID() string
type RestoreTableInput ¶
type RestoreTableInput struct { // The keyspace name of the source table. // // This member is required. SourceKeyspaceName *string // The name of the source table. // // This member is required. SourceTableName *string // The name of the target keyspace. // // This member is required. TargetKeyspaceName *string // The name of the target table. // // This member is required. TargetTableName *string // The optional auto scaling settings for the restored table in provisioned // capacity mode. Specifies if the service can manage throughput capacity of a // provisioned table automatically on your behalf. Amazon Keyspaces auto scaling // helps you provision throughput capacity for variable workloads efficiently by // increasing and decreasing your table's read and write capacity automatically in // response to application traffic. // // For more information, see [Managing throughput capacity automatically with Amazon Keyspaces auto scaling] in the Amazon Keyspaces Developer Guide. // // [Managing throughput capacity automatically with Amazon Keyspaces auto scaling]: https://docs.aws.amazon.com/keyspaces/latest/devguide/autoscaling.html AutoScalingSpecification *types.AutoScalingSpecification // Specifies the read/write throughput capacity mode for the target table. The // options are: // // - throughputMode:PAY_PER_REQUEST // // - throughputMode:PROVISIONED - Provisioned capacity mode requires // readCapacityUnits and writeCapacityUnits as input. // // The default is throughput_mode:PAY_PER_REQUEST . // // For more information, see [Read/write capacity modes] in the Amazon Keyspaces Developer Guide. // // [Read/write capacity modes]: https://docs.aws.amazon.com/keyspaces/latest/devguide/ReadWriteCapacityMode.html CapacitySpecificationOverride *types.CapacitySpecification // Specifies the encryption settings for the target table. You can choose one of // the following KMS key (KMS key): // // - type:AWS_OWNED_KMS_KEY - This key is owned by Amazon Keyspaces. // // - type:CUSTOMER_MANAGED_KMS_KEY - This key is stored in your account and is // created, owned, and managed by you. This option requires the // kms_key_identifier of the KMS key in Amazon Resource Name (ARN) format as // input. // // The default is type:AWS_OWNED_KMS_KEY . // // For more information, see [Encryption at rest] in the Amazon Keyspaces Developer Guide. // // [Encryption at rest]: https://docs.aws.amazon.com/keyspaces/latest/devguide/EncryptionAtRest.html EncryptionSpecificationOverride *types.EncryptionSpecification // Specifies the pointInTimeRecovery settings for the target table. The options // are: // // - status=ENABLED // // - status=DISABLED // // If it's not specified, the default is status=DISABLED . // // For more information, see [Point-in-time recovery] in the Amazon Keyspaces Developer Guide. // // [Point-in-time recovery]: https://docs.aws.amazon.com/keyspaces/latest/devguide/PointInTimeRecovery.html PointInTimeRecoveryOverride *types.PointInTimeRecovery // The optional Region specific settings of a multi-Regional table. ReplicaSpecifications []types.ReplicaSpecification // The restore timestamp in ISO 8601 format. RestoreTimestamp *time.Time // A list of key-value pair tags to be attached to the restored table. // // For more information, see [Adding tags and labels to Amazon Keyspaces resources] in the Amazon Keyspaces Developer Guide. // // [Adding tags and labels to Amazon Keyspaces resources]: https://docs.aws.amazon.com/keyspaces/latest/devguide/tagging-keyspaces.html TagsOverride []types.Tag // contains filtered or unexported fields }
type RestoreTableOutput ¶
type RestoreTableOutput struct { // The Amazon Resource Name (ARN) of the restored table. // // This member is required. RestoredTableARN *string // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type TagResourceInput ¶
type TagResourceInput struct { // The Amazon Resource Name (ARN) of the Amazon Keyspaces resource to which to add // tags. // // This member is required. ResourceArn *string // The tags to be assigned to the Amazon Keyspaces resource. // // This member is required. Tags []types.Tag // contains filtered or unexported fields }
type TagResourceOutput ¶
type TagResourceOutput struct { // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type UntagResourceInput ¶
type UntagResourceInput struct { // The Amazon Keyspaces resource that the tags will be removed from. This value is // an Amazon Resource Name (ARN). // // This member is required. ResourceArn *string // A list of existing tags to be removed from the Amazon Keyspaces resource. // // This member is required. Tags []types.Tag // contains filtered or unexported fields }
type UntagResourceOutput ¶
type UntagResourceOutput struct { // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
type UpdateTableInput ¶
type UpdateTableInput struct { // The name of the keyspace the specified table is stored in. // // This member is required. KeyspaceName *string // The name of the table. // // This member is required. TableName *string // For each column to be added to the specified table: // // - name - The name of the column. // // - type - An Amazon Keyspaces data type. For more information, see [Data types]in the // Amazon Keyspaces Developer Guide. // // [Data types]: https://docs.aws.amazon.com/keyspaces/latest/devguide/cql.elements.html#cql.data-types AddColumns []types.ColumnDefinition // The optional auto scaling settings to update for a table in provisioned // capacity mode. Specifies if the service can manage throughput capacity of a // provisioned table automatically on your behalf. Amazon Keyspaces auto scaling // helps you provision throughput capacity for variable workloads efficiently by // increasing and decreasing your table's read and write capacity automatically in // response to application traffic. // // If auto scaling is already enabled for the table, you can use UpdateTable to // update the minimum and maximum values or the auto scaling policy settings // independently. // // For more information, see [Managing throughput capacity automatically with Amazon Keyspaces auto scaling] in the Amazon Keyspaces Developer Guide. // // [Managing throughput capacity automatically with Amazon Keyspaces auto scaling]: https://docs.aws.amazon.com/keyspaces/latest/devguide/autoscaling.html AutoScalingSpecification *types.AutoScalingSpecification // Modifies the read/write throughput capacity mode for the table. The options are: // // - throughputMode:PAY_PER_REQUEST and // // - throughputMode:PROVISIONED - Provisioned capacity mode requires // readCapacityUnits and writeCapacityUnits as input. // // The default is throughput_mode:PAY_PER_REQUEST . // // For more information, see [Read/write capacity modes] in the Amazon Keyspaces Developer Guide. // // [Read/write capacity modes]: https://docs.aws.amazon.com/keyspaces/latest/devguide/ReadWriteCapacityMode.html CapacitySpecification *types.CapacitySpecification // Enables client-side timestamps for the table. By default, the setting is // disabled. You can enable client-side timestamps with the following option: // // - status: "enabled" // // Once client-side timestamps are enabled for a table, this setting cannot be // disabled. ClientSideTimestamps *types.ClientSideTimestamps // The default Time to Live setting in seconds for the table. // // For more information, see [Setting the default TTL value for a table] in the Amazon Keyspaces Developer Guide. // // [Setting the default TTL value for a table]: https://docs.aws.amazon.com/keyspaces/latest/devguide/TTL-how-it-works.html#ttl-howitworks_default_ttl DefaultTimeToLive *int32 // Modifies the encryption settings of the table. You can choose one of the // following KMS key (KMS key): // // - type:AWS_OWNED_KMS_KEY - This key is owned by Amazon Keyspaces. // // - type:CUSTOMER_MANAGED_KMS_KEY - This key is stored in your account and is // created, owned, and managed by you. This option requires the // kms_key_identifier of the KMS key in Amazon Resource Name (ARN) format as // input. // // The default is AWS_OWNED_KMS_KEY . // // For more information, see [Encryption at rest] in the Amazon Keyspaces Developer Guide. // // [Encryption at rest]: https://docs.aws.amazon.com/keyspaces/latest/devguide/EncryptionAtRest.html EncryptionSpecification *types.EncryptionSpecification // Modifies the pointInTimeRecovery settings of the table. The options are: // // - status=ENABLED // // - status=DISABLED // // If it's not specified, the default is status=DISABLED . // // For more information, see [Point-in-time recovery] in the Amazon Keyspaces Developer Guide. // // [Point-in-time recovery]: https://docs.aws.amazon.com/keyspaces/latest/devguide/PointInTimeRecovery.html PointInTimeRecovery *types.PointInTimeRecovery // The Region specific settings of a multi-Regional table. ReplicaSpecifications []types.ReplicaSpecification // Modifies Time to Live custom settings for the table. The options are: // // - status:enabled // // - status:disabled // // The default is status:disabled . After ttl is enabled, you can't disable it for // the table. // // For more information, see [Expiring data by using Amazon Keyspaces Time to Live (TTL)] in the Amazon Keyspaces Developer Guide. // // [Expiring data by using Amazon Keyspaces Time to Live (TTL)]: https://docs.aws.amazon.com/keyspaces/latest/devguide/TTL.html Ttl *types.TimeToLive // contains filtered or unexported fields }
type UpdateTableOutput ¶
type UpdateTableOutput struct { // The Amazon Resource Name (ARN) of the modified table. // // This member is required. ResourceArn *string // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata // contains filtered or unexported fields }
Source Files ¶
- api_client.go
- api_op_CreateKeyspace.go
- api_op_CreateTable.go
- api_op_DeleteKeyspace.go
- api_op_DeleteTable.go
- api_op_GetKeyspace.go
- api_op_GetTable.go
- api_op_GetTableAutoScalingSettings.go
- api_op_ListKeyspaces.go
- api_op_ListTables.go
- api_op_ListTagsForResource.go
- api_op_RestoreTable.go
- api_op_TagResource.go
- api_op_UntagResource.go
- api_op_UpdateTable.go
- auth.go
- deserializers.go
- doc.go
- endpoints.go
- go_module_metadata.go
- options.go
- serializers.go
- validators.go