* DBSnapshotIdentifier
doesn't refer to an existing DB snapshot.
The specified integration could not be found.
+ * * @throws {@link RDSServiceException} *Base exception class for all service exceptions from RDS service.
* diff --git a/clients/client-rds/src/commands/CreateCustomDBEngineVersionCommand.ts b/clients/client-rds/src/commands/CreateCustomDBEngineVersionCommand.ts index 4022aa5b49eee..2bcc4717a6e50 100644 --- a/clients/client-rds/src/commands/CreateCustomDBEngineVersionCommand.ts +++ b/clients/client-rds/src/commands/CreateCustomDBEngineVersionCommand.ts @@ -105,6 +105,7 @@ export interface CreateCustomDBEngineVersionCommandOutput extends DBEngineVersio * // SupportsGlobalDatabases: true || false, * // SupportsBabelfish: true || false, * // SupportsLocalWriteForwarding: true || false, + * // SupportsIntegrations: true || false, * // }, * // ], * // SupportedTimezones: [ // SupportedTimezonesList @@ -145,6 +146,7 @@ export interface CreateCustomDBEngineVersionCommandOutput extends DBEngineVersio * // "STRING_VALUE", * // ], * // SupportsLocalWriteForwarding: true || false, + * // SupportsIntegrations: true || false, * // }; * * ``` diff --git a/clients/client-rds/src/commands/CreateIntegrationCommand.ts b/clients/client-rds/src/commands/CreateIntegrationCommand.ts new file mode 100644 index 0000000000000..6907bdb032e67 --- /dev/null +++ b/clients/client-rds/src/commands/CreateIntegrationCommand.ts @@ -0,0 +1,204 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, + SMITHY_CONTEXT_KEY, +} from "@smithy/types"; + +import { CreateIntegrationMessage, Integration } from "../models/models_0"; +import { de_CreateIntegrationCommand, se_CreateIntegrationCommand } from "../protocols/Aws_query"; +import { RDSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../RDSClient"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link CreateIntegrationCommand}. + */ +export interface CreateIntegrationCommandInput extends CreateIntegrationMessage {} +/** + * @public + * + * The output of {@link CreateIntegrationCommand}. + */ +export interface CreateIntegrationCommandOutput extends Integration, __MetadataBearer {} + +/** + * @public + *Creates a zero-ETL integration with Amazon Redshift. For more information, see Working + * with Amazon Aurora zero-ETL integrations with Amazon Redshift in the + * Amazon Aurora User Guide.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { RDSClient, CreateIntegrationCommand } from "@aws-sdk/client-rds"; // ES Modules import + * // const { RDSClient, CreateIntegrationCommand } = require("@aws-sdk/client-rds"); // CommonJS import + * const client = new RDSClient(config); + * const input = { // CreateIntegrationMessage + * SourceArn: "STRING_VALUE", // required + * TargetArn: "STRING_VALUE", // required + * IntegrationName: "STRING_VALUE", // required + * KMSKeyId: "STRING_VALUE", + * AdditionalEncryptionContext: { // EncryptionContextMap + * "
+ * DBClusterIdentifier
doesn't refer to an existing DB cluster.
+ * DBInstanceIdentifier
doesn't refer to an existing DB instance.
The integration you are trying to create already exists.
+ * + * @throws {@link IntegrationConflictOperationFault} (client fault) + *A conflicting conditional operation is currently in progress against this resource. + * Typically occurs when there are multiple requests being made to the same resource at the same time, + * and these requests conflict with each other.
+ * + * @throws {@link IntegrationQuotaExceededFault} (client fault) + *You can't crate any more zero-ETL integrations because the quota has been reached.
+ * + * @throws {@link KMSKeyNotAccessibleFault} (client fault) + *An error occurred accessing an Amazon Web Services KMS key.
+ * + * @throws {@link RDSServiceException} + *Base exception class for all service exceptions from RDS service.
+ * + */ +export class CreateIntegrationCommand extends $Command< + CreateIntegrationCommandInput, + CreateIntegrationCommandOutput, + RDSClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: CreateIntegrationCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDeletes a zero-ETL integration with Amazon Redshift. For more information, see Deleting Amazon Aurora zero-ETL integrations with Amazon Redshift in the + * Amazon Aurora User Guide + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { RDSClient, DeleteIntegrationCommand } from "@aws-sdk/client-rds"; // ES Modules import + * // const { RDSClient, DeleteIntegrationCommand } = require("@aws-sdk/client-rds"); // CommonJS import + * const client = new RDSClient(config); + * const input = { // DeleteIntegrationMessage + * IntegrationIdentifier: "STRING_VALUE", // required + * }; + * const command = new DeleteIntegrationCommand(input); + * const response = await client.send(command); + * // { // Integration + * // SourceArn: "STRING_VALUE", + * // TargetArn: "STRING_VALUE", + * // IntegrationName: "STRING_VALUE", + * // IntegrationArn: "STRING_VALUE", + * // KMSKeyId: "STRING_VALUE", + * // AdditionalEncryptionContext: { // EncryptionContextMap + * // "A conflicting conditional operation is currently in progress against this resource. + * Typically occurs when there are multiple requests being made to the same resource at the same time, + * and these requests conflict with each other.
+ * + * @throws {@link IntegrationNotFoundFault} (client fault) + *The specified integration could not be found.
+ * + * @throws {@link InvalidIntegrationStateFault} (client fault) + *The integration is in an invalid state and can't perform the requested operation.
+ * + * @throws {@link RDSServiceException} + *Base exception class for all service exceptions from RDS service.
+ * + */ +export class DeleteIntegrationCommand extends $Command< + DeleteIntegrationCommandInput, + DeleteIntegrationCommandOutput, + RDSClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: DeleteIntegrationCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDescribe one or more zero-ETL integration with Amazon Redshift. For more information, + * see Viewing and monitoring Amazon Aurora zero-ETL integrations with Amazon Redshift in + * the Amazon Aurora User Guide + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { RDSClient, DescribeIntegrationsCommand } from "@aws-sdk/client-rds"; // ES Modules import + * // const { RDSClient, DescribeIntegrationsCommand } = require("@aws-sdk/client-rds"); // CommonJS import + * const client = new RDSClient(config); + * const input = { // DescribeIntegrationsMessage + * IntegrationIdentifier: "STRING_VALUE", + * Filters: [ // FilterList + * { // Filter + * Name: "STRING_VALUE", // required + * Values: [ // FilterValueList // required + * "STRING_VALUE", + * ], + * }, + * ], + * MaxRecords: Number("int"), + * Marker: "STRING_VALUE", + * }; + * const command = new DescribeIntegrationsCommand(input); + * const response = await client.send(command); + * // { // DescribeIntegrationsResponse + * // Marker: "STRING_VALUE", + * // Integrations: [ // IntegrationList + * // { // Integration + * // SourceArn: "STRING_VALUE", + * // TargetArn: "STRING_VALUE", + * // IntegrationName: "STRING_VALUE", + * // IntegrationArn: "STRING_VALUE", + * // KMSKeyId: "STRING_VALUE", + * // AdditionalEncryptionContext: { // EncryptionContextMap + * // "The specified integration could not be found.
+ * + * @throws {@link RDSServiceException} + *Base exception class for all service exceptions from RDS service.
+ * + */ +export class DescribeIntegrationsCommand extends $Command< + DescribeIntegrationsCommandInput, + DescribeIntegrationsCommandOutput, + RDSClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: DescribeIntegrationsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack
* DBSnapshotIdentifier
doesn't refer to an existing DB snapshot.
The specified integration could not be found.
+ * * @throws {@link RDSServiceException} *Base exception class for all service exceptions from RDS service.
* diff --git a/clients/client-rds/src/commands/ModifyCustomDBEngineVersionCommand.ts b/clients/client-rds/src/commands/ModifyCustomDBEngineVersionCommand.ts index bfc8be98b3a0f..00850277abd01 100644 --- a/clients/client-rds/src/commands/ModifyCustomDBEngineVersionCommand.ts +++ b/clients/client-rds/src/commands/ModifyCustomDBEngineVersionCommand.ts @@ -104,6 +104,7 @@ export interface ModifyCustomDBEngineVersionCommandOutput extends DBEngineVersio * // SupportsGlobalDatabases: true || false, * // SupportsBabelfish: true || false, * // SupportsLocalWriteForwarding: true || false, + * // SupportsIntegrations: true || false, * // }, * // ], * // SupportedTimezones: [ // SupportedTimezonesList @@ -144,6 +145,7 @@ export interface ModifyCustomDBEngineVersionCommandOutput extends DBEngineVersio * // "STRING_VALUE", * // ], * // SupportsLocalWriteForwarding: true || false, + * // SupportsIntegrations: true || false, * // }; * * ``` diff --git a/clients/client-rds/src/commands/RemoveTagsFromResourceCommand.ts b/clients/client-rds/src/commands/RemoveTagsFromResourceCommand.ts index 9eee5835eb1f7..449d4c19e0bf8 100644 --- a/clients/client-rds/src/commands/RemoveTagsFromResourceCommand.ts +++ b/clients/client-rds/src/commands/RemoveTagsFromResourceCommand.ts @@ -88,6 +88,9 @@ export interface RemoveTagsFromResourceCommandOutput extends __MetadataBearer {} *
* DBSnapshotIdentifier
doesn't refer to an existing DB snapshot.
The specified integration could not be found.
+ * * @throws {@link RDSServiceException} *Base exception class for all service exceptions from RDS service.
* diff --git a/clients/client-rds/src/commands/index.ts b/clients/client-rds/src/commands/index.ts index 136280158e879..95244c5d54f40 100644 --- a/clients/client-rds/src/commands/index.ts +++ b/clients/client-rds/src/commands/index.ts @@ -28,6 +28,7 @@ export * from "./CreateDBSnapshotCommand"; export * from "./CreateDBSubnetGroupCommand"; export * from "./CreateEventSubscriptionCommand"; export * from "./CreateGlobalClusterCommand"; +export * from "./CreateIntegrationCommand"; export * from "./CreateOptionGroupCommand"; export * from "./DeleteBlueGreenDeploymentCommand"; export * from "./DeleteCustomDBEngineVersionCommand"; @@ -46,6 +47,7 @@ export * from "./DeleteDBSnapshotCommand"; export * from "./DeleteDBSubnetGroupCommand"; export * from "./DeleteEventSubscriptionCommand"; export * from "./DeleteGlobalClusterCommand"; +export * from "./DeleteIntegrationCommand"; export * from "./DeleteOptionGroupCommand"; export * from "./DeregisterDBProxyTargetsCommand"; export * from "./DescribeAccountAttributesCommand"; @@ -80,6 +82,7 @@ export * from "./DescribeEventSubscriptionsCommand"; export * from "./DescribeEventsCommand"; export * from "./DescribeExportTasksCommand"; export * from "./DescribeGlobalClustersCommand"; +export * from "./DescribeIntegrationsCommand"; export * from "./DescribeOptionGroupOptionsCommand"; export * from "./DescribeOptionGroupsCommand"; export * from "./DescribeOrderableDBInstanceOptionsCommand"; diff --git a/clients/client-rds/src/models/models_0.ts b/clients/client-rds/src/models/models_0.ts index a609783cecd19..31c8d508df846 100644 --- a/clients/client-rds/src/models/models_0.ts +++ b/clients/client-rds/src/models/models_0.ts @@ -693,6 +693,26 @@ export class DBSnapshotNotFoundFault extends __BaseException { } } +/** + * @public + *The specified integration could not be found.
+ */ +export class IntegrationNotFoundFault extends __BaseException { + readonly name: "IntegrationNotFoundFault" = "IntegrationNotFoundFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeValid for: Aurora DB clusters only
*/ SupportsLocalWriteForwarding?: boolean; + + /** + * @public + *Indicates whether the DB engine version supports Aurora zero-ETL integrations with + * Amazon Redshift.
+ */ + SupportsIntegrations?: boolean; } /** @@ -4065,6 +4092,13 @@ export interface DBEngineVersion { *Valid for: Aurora DB clusters only
*/ SupportsLocalWriteForwarding?: boolean; + + /** + * @public + *Indicates whether the DB engine version supports Aurora zero-ETL integrations with + * Amazon Redshift.
+ */ + SupportsIntegrations?: boolean; } /** @@ -11566,6 +11600,229 @@ export class GlobalClusterQuotaExceededFault extends __BaseException { } } +/** + * @public + */ +export interface CreateIntegrationMessage { + /** + * @public + *The Amazon Resource Name (ARN) of the Aurora DB cluster to use as the source for + * replication.
+ */ + SourceArn: string | undefined; + + /** + * @public + *The ARN of the Redshift data warehouse to use as the target for replication.
+ */ + TargetArn: string | undefined; + + /** + * @public + *The name of the integration.
+ */ + IntegrationName: string | undefined; + + /** + * @public + *The Amazon Web Services Key Management System (Amazon Web Services KMS) key identifier for the key to use to + * encrypt the integration. If you don't specify an encryption key, Aurora uses a default + * Amazon Web Services owned key.
+ */ + KMSKeyId?: string; + + /** + * @public + *An optional set of non-secret key–value pairs that contains additional contextual + * information about the data. For more information, see Encryption + * context in the Amazon Web Services Key Management Service Developer + * Guide.
+ *You can only include this parameter if you specify the KMSKeyId
parameter.
A list of tags. + * For more information, see Tagging Amazon RDS Resources in the Amazon RDS User Guide. + *
+ */ + Tags?: Tag[]; +} + +/** + * @public + *An error associated with a zero-ETL integration with Amazon Redshift.
+ */ +export interface IntegrationError { + /** + * @public + *The error code associated with the integration.
+ */ + ErrorCode: string | undefined; + + /** + * @public + *A message explaining the error.
+ */ + ErrorMessage?: string; +} + +/** + * @public + * @enum + */ +export const IntegrationStatus = { + ACTIVE: "active", + CREATING: "creating", + DELETING: "deleting", + FAILED: "failed", + MODIFYING: "modifying", + NEEDS_ATTENTION: "needs_attention", + SYNCING: "syncing", +} as const; + +/** + * @public + */ +export type IntegrationStatus = (typeof IntegrationStatus)[keyof typeof IntegrationStatus]; + +/** + * @public + *An Aurora zero-ETL integration with Amazon Redshift. For more information, see Working + * with Amazon Aurora zero-ETL integrations with Amazon Redshift in the + * Amazon Aurora User Guide.
+ */ +export interface Integration { + /** + * @public + *The Amazon Resource Name (ARN) of the Aurora DB cluster used as the source for + * replication.
+ */ + SourceArn?: string; + + /** + * @public + *The ARN of the Redshift data warehouse used as the target for replication.
+ */ + TargetArn?: string; + + /** + * @public + *The name of the integration.
+ */ + IntegrationName?: string; + + /** + * @public + *The ARN of the integration.
+ */ + IntegrationArn?: string; + + /** + * @public + *The Amazon Web Services Key Management System (Amazon Web Services KMS) key identifier for the key used to to + * encrypt the integration.
+ */ + KMSKeyId?: string; + + /** + * @public + *The encryption context for the integration. For more information, see Encryption context in the Amazon Web Services Key Management Service Developer + * Guide.
+ */ + AdditionalEncryptionContext?: RecordThe current status of the integration.
+ */ + Status?: IntegrationStatus; + + /** + * @public + *A list of tags. + * For more information, see Tagging Amazon RDS Resources in the Amazon RDS User Guide. + *
+ */ + Tags?: Tag[]; + + /** + * @public + *The time when the integration was created, in Universal Coordinated Time + * (UTC).
+ */ + CreateTime?: Date; + + /** + * @public + *Any errors associated with the integration.
+ */ + Errors?: IntegrationError[]; +} + +/** + * @public + *The integration you are trying to create already exists.
+ */ +export class IntegrationAlreadyExistsFault extends __BaseException { + readonly name: "IntegrationAlreadyExistsFault" = "IntegrationAlreadyExistsFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeA conflicting conditional operation is currently in progress against this resource. + * Typically occurs when there are multiple requests being made to the same resource at the same time, + * and these requests conflict with each other.
+ */ +export class IntegrationConflictOperationFault extends __BaseException { + readonly name: "IntegrationConflictOperationFault" = "IntegrationConflictOperationFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeYou can't crate any more zero-ETL integrations because the quota has been reached.
+ */ +export class IntegrationQuotaExceededFault extends __BaseException { + readonly name: "IntegrationQuotaExceededFault" = "IntegrationQuotaExceededFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeThe unique identifier of the integration.
+ */ + IntegrationIdentifier: string | undefined; +} + +/** + * @public + *The integration is in an invalid state and can't perform the requested operation.
+ */ +export class InvalidIntegrationStateFault extends __BaseException { + readonly name: "InvalidIntegrationStateFault" = "InvalidIntegrationStateFault"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionTypeThe name of a specific DB cluster parameter group to return parameter details for.
- *Constraints:
- *If supplied, must match the name of an existing DBClusterParameterGroup.
- *A specific source to return parameters for.
- *Valid Values:
- *
- * customer
- *
- * engine
- *
- * service
- *
This parameter isn't currently supported.
- */ - Filters?: Filter[]; - - /** - * @public - *The maximum number of records to include in the response.
- * If more records exist than the specified MaxRecords
value,
- * a pagination token called a marker is included in the response so you can retrieve the remaining results.
Default: 100
- *Constraints: Minimum 20, maximum 100.
- */ - MaxRecords?: number; - - /** - * @public - *An optional pagination token provided by a previous
- * DescribeDBClusterParameters
request.
- * If this parameter is specified, the response includes
- * only records beyond the marker,
- * up to the value specified by MaxRecords
.
Contains the result of a successful invocation of the DescribeDBClusters
action.
A pagination token that can be used in a later DescribeDBClusters
request.
Contains a list of DB clusters for the user.
- */ - DBClusters?: DBCluster[]; -} - -/** - * @public - * - */ -export interface DescribeDBClustersMessage { - /** - * @public - *The user-supplied DB cluster identifier or the Amazon Resource Name (ARN) of the DB cluster. If this parameter is specified, - * information for only the specific DB cluster is returned. This parameter isn't case-sensitive.
- *Constraints:
- *If supplied, must match an existing DB cluster identifier.
- *A filter that specifies one or more DB clusters to describe.
- *Supported Filters:
- *
- * clone-group-id
- Accepts clone group identifiers.
- * The results list only includes information about
- * the DB clusters associated with these clone groups.
- * db-cluster-id
- Accepts DB cluster identifiers and DB
- * cluster Amazon Resource Names (ARNs). The results list only includes information about
- * the DB clusters identified by these ARNs.
- * db-cluster-resource-id
- Accepts DB cluster resource identifiers.
- * The results list will only include information about the DB clusters identified
- * by these DB cluster resource identifiers.
- * domain
- Accepts Active Directory directory IDs.
- * The results list only includes information about
- * the DB clusters associated with these domains.
- * engine
- Accepts engine names.
- * The results list only includes information about
- * the DB clusters for these engines.
The maximum number of records to include in the response.
- * If more records exist than the specified MaxRecords
value,
- * a pagination token called a marker is included in the response so you can retrieve the remaining results.
Default: 100
- *Constraints: Minimum 20, maximum 100.
- */ - MaxRecords?: number; - - /** - * @public - *An optional pagination token provided by a previous
- * DescribeDBClusters
request.
- * If this parameter is specified, the response includes
- * only records beyond the marker,
- * up to the value specified by MaxRecords
.
Specifies whether the output includes information about clusters - * shared from other Amazon Web Services accounts.
- */ - IncludeShared?: boolean; -} - -/** - * @public - * - */ -export interface DescribeDBClusterSnapshotAttributesMessage { - /** - * @public - *The identifier for the DB cluster snapshot to describe the attributes for.
- */ - DBClusterSnapshotIdentifier: string | undefined; -} - -/** - * @public - *Contains the name and values of a manual DB cluster snapshot attribute.
- *Manual DB cluster snapshot attributes are used to authorize other Amazon Web Services accounts
- * to restore a manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute
- * API action.
The name of the manual DB cluster snapshot attribute.
- *The attribute named restore
refers to the list of Amazon Web Services accounts that
- * have permission to copy or restore the manual DB cluster snapshot. For more information,
- * see the ModifyDBClusterSnapshotAttribute
- * API action.
The value(s) for the manual DB cluster snapshot attribute.
- *If the AttributeName
field is set to restore
, then this element
- * returns a list of IDs of the Amazon Web Services accounts that are authorized to copy or restore the manual
- * DB cluster snapshot. If a value of all
is in the list, then the manual DB cluster snapshot
- * is public and available for any Amazon Web Services account to copy or restore.
Contains the results of a successful call to the DescribeDBClusterSnapshotAttributes
- * API action.
Manual DB cluster snapshot attributes are used to authorize other Amazon Web Services accounts
- * to copy or restore a manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute
- * API action.
The identifier of the manual DB cluster snapshot that the attributes apply to.
- */ - DBClusterSnapshotIdentifier?: string; - - /** - * @public - *The list of attributes and values for the manual DB cluster snapshot.
- */ - DBClusterSnapshotAttributes?: DBClusterSnapshotAttribute[]; -} - -/** - * @public - */ -export interface DescribeDBClusterSnapshotAttributesResult { - /** - * @public - *Contains the results of a successful call to the DescribeDBClusterSnapshotAttributes
- * API action.
Manual DB cluster snapshot attributes are used to authorize other Amazon Web Services accounts
- * to copy or restore a manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute
- * API action.
Provides a list of DB cluster snapshots for the user as the result of a call to the DescribeDBClusterSnapshots
action.
An optional pagination token provided by a previous
- * DescribeDBClusterSnapshots
request.
- * If this parameter is specified, the response includes
- * only records beyond the marker,
- * up to the value specified by MaxRecords
.
Provides a list of DB cluster snapshots for the user.
- */ - DBClusterSnapshots?: DBClusterSnapshot[]; -} - -/** - * @public - * - */ -export interface DescribeDBClusterSnapshotsMessage { - /** - * @public - *The ID of the DB cluster to retrieve the list of DB cluster snapshots for.
- * This parameter can't be used in conjunction with the
- * DBClusterSnapshotIdentifier
parameter.
- * This parameter isn't case-sensitive.
Constraints:
- *If supplied, must match the identifier of an existing DBCluster.
- *A specific DB cluster snapshot identifier to describe.
- * This parameter can't be used in conjunction with the
- * DBClusterIdentifier
parameter.
- * This value is stored as a lowercase string.
Constraints:
- *If supplied, must match the identifier of an existing DBClusterSnapshot.
- *If this identifier is for an automated snapshot, the SnapshotType
parameter must also be specified.
The type of DB cluster snapshots to be returned. You can specify one of the following values:
- *
- * automated
- Return all DB cluster snapshots that have been automatically taken by
- * Amazon RDS for my Amazon Web Services account.
- * manual
- Return all DB cluster snapshots that have been taken by my Amazon Web Services account.
- * shared
- Return all manual DB cluster snapshots that have been shared to my Amazon Web Services account.
- * public
- Return all DB cluster snapshots that have been marked as public.
If you don't specify a SnapshotType
value, then both automated and manual DB cluster snapshots are
- * returned. You can include shared DB cluster snapshots with these results by enabling the IncludeShared
- * parameter. You can include public DB cluster snapshots with these results by enabling the
- * IncludePublic
parameter.
The IncludeShared
and IncludePublic
parameters don't apply for SnapshotType
values
- * of manual
or automated
. The IncludePublic
parameter doesn't apply when SnapshotType
is
- * set to shared
. The IncludeShared
parameter doesn't apply when SnapshotType
is set to
- * public
.
A filter that specifies one or more DB cluster snapshots to describe.
- *Supported filters:
- *
- * db-cluster-id
- Accepts DB cluster identifiers and DB
- * cluster Amazon Resource Names (ARNs).
- * db-cluster-snapshot-id
- Accepts DB cluster snapshot identifiers.
- * snapshot-type
- Accepts types of DB cluster snapshots.
- * engine
- Accepts names of database engines.
The maximum number of records to include in the response.
- * If more records exist than the specified MaxRecords
value,
- * a pagination token called a marker is included in the response so you can retrieve the remaining results.
Default: 100
- *Constraints: Minimum 20, maximum 100.
- */ - MaxRecords?: number; - - /** - * @public - *An optional pagination token provided by a previous
- * DescribeDBClusterSnapshots
request.
- * If this parameter is specified, the response includes
- * only records beyond the marker,
- * up to the value specified by MaxRecords
.
Specifies whether to include shared manual DB cluster snapshots - * from other Amazon Web Services accounts that this Amazon Web Services account has been given - * permission to copy or restore. By default, these snapshots are not included.
- *You can give an Amazon Web Services account permission to restore a manual DB cluster snapshot from
- * another Amazon Web Services account by the ModifyDBClusterSnapshotAttribute
API action.
Specifies whether to include manual DB cluster snapshots that are public and can be copied - * or restored by any Amazon Web Services account. By default, the public snapshots are not included.
- *You can share a manual DB cluster snapshot as public by using the ModifyDBClusterSnapshotAttribute API action.
- */ - IncludePublic?: boolean; - - /** - * @public - *A specific DB cluster resource ID to describe.
- */ - DbClusterResourceId?: string; -} - -/** - * @public - *Contains the result of a successful invocation of the DescribeDBEngineVersions
action.
An optional pagination token provided by a previous request.
- * If this parameter is specified, the response includes
- * only records beyond the marker,
- * up to the value specified by MaxRecords
.
A list of DBEngineVersion
elements.
The name of a specific DB cluster parameter group to return parameter details for.
+ *Constraints:
+ *If supplied, must match the name of an existing DBClusterParameterGroup.
+ *A specific source to return parameters for.
+ *Valid Values:
+ *
+ * customer
+ *
+ * engine
+ *
+ * service
+ *
This parameter isn't currently supported.
+ */ + Filters?: Filter[]; + + /** + * @public + *The maximum number of records to include in the response.
+ * If more records exist than the specified MaxRecords
value,
+ * a pagination token called a marker is included in the response so you can retrieve the remaining results.
Default: 100
+ *Constraints: Minimum 20, maximum 100.
+ */ + MaxRecords?: number; + + /** + * @public + *An optional pagination token provided by a previous
+ * DescribeDBClusterParameters
request.
+ * If this parameter is specified, the response includes
+ * only records beyond the marker,
+ * up to the value specified by MaxRecords
.
Contains the result of a successful invocation of the DescribeDBClusters
action.
A pagination token that can be used in a later DescribeDBClusters
request.
Contains a list of DB clusters for the user.
+ */ + DBClusters?: DBCluster[]; +} + +/** + * @public + * + */ +export interface DescribeDBClustersMessage { + /** + * @public + *The user-supplied DB cluster identifier or the Amazon Resource Name (ARN) of the DB cluster. If this parameter is specified, + * information for only the specific DB cluster is returned. This parameter isn't case-sensitive.
+ *Constraints:
+ *If supplied, must match an existing DB cluster identifier.
+ *A filter that specifies one or more DB clusters to describe.
+ *Supported Filters:
+ *
+ * clone-group-id
- Accepts clone group identifiers.
+ * The results list only includes information about
+ * the DB clusters associated with these clone groups.
+ * db-cluster-id
- Accepts DB cluster identifiers and DB
+ * cluster Amazon Resource Names (ARNs). The results list only includes information about
+ * the DB clusters identified by these ARNs.
+ * db-cluster-resource-id
- Accepts DB cluster resource identifiers.
+ * The results list will only include information about the DB clusters identified
+ * by these DB cluster resource identifiers.
+ * domain
- Accepts Active Directory directory IDs.
+ * The results list only includes information about
+ * the DB clusters associated with these domains.
+ * engine
- Accepts engine names.
+ * The results list only includes information about
+ * the DB clusters for these engines.
The maximum number of records to include in the response.
+ * If more records exist than the specified MaxRecords
value,
+ * a pagination token called a marker is included in the response so you can retrieve the remaining results.
Default: 100
+ *Constraints: Minimum 20, maximum 100.
+ */ + MaxRecords?: number; + + /** + * @public + *An optional pagination token provided by a previous
+ * DescribeDBClusters
request.
+ * If this parameter is specified, the response includes
+ * only records beyond the marker,
+ * up to the value specified by MaxRecords
.
Specifies whether the output includes information about clusters + * shared from other Amazon Web Services accounts.
+ */ + IncludeShared?: boolean; +} + +/** + * @public + * + */ +export interface DescribeDBClusterSnapshotAttributesMessage { + /** + * @public + *The identifier for the DB cluster snapshot to describe the attributes for.
+ */ + DBClusterSnapshotIdentifier: string | undefined; +} + +/** + * @public + *Contains the name and values of a manual DB cluster snapshot attribute.
+ *Manual DB cluster snapshot attributes are used to authorize other Amazon Web Services accounts
+ * to restore a manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute
+ * API action.
The name of the manual DB cluster snapshot attribute.
+ *The attribute named restore
refers to the list of Amazon Web Services accounts that
+ * have permission to copy or restore the manual DB cluster snapshot. For more information,
+ * see the ModifyDBClusterSnapshotAttribute
+ * API action.
The value(s) for the manual DB cluster snapshot attribute.
+ *If the AttributeName
field is set to restore
, then this element
+ * returns a list of IDs of the Amazon Web Services accounts that are authorized to copy or restore the manual
+ * DB cluster snapshot. If a value of all
is in the list, then the manual DB cluster snapshot
+ * is public and available for any Amazon Web Services account to copy or restore.
Contains the results of a successful call to the DescribeDBClusterSnapshotAttributes
+ * API action.
Manual DB cluster snapshot attributes are used to authorize other Amazon Web Services accounts
+ * to copy or restore a manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute
+ * API action.
The identifier of the manual DB cluster snapshot that the attributes apply to.
+ */ + DBClusterSnapshotIdentifier?: string; + + /** + * @public + *The list of attributes and values for the manual DB cluster snapshot.
+ */ + DBClusterSnapshotAttributes?: DBClusterSnapshotAttribute[]; +} + +/** + * @public + */ +export interface DescribeDBClusterSnapshotAttributesResult { + /** + * @public + *Contains the results of a successful call to the DescribeDBClusterSnapshotAttributes
+ * API action.
Manual DB cluster snapshot attributes are used to authorize other Amazon Web Services accounts
+ * to copy or restore a manual DB cluster snapshot. For more information, see the ModifyDBClusterSnapshotAttribute
+ * API action.
Provides a list of DB cluster snapshots for the user as the result of a call to the DescribeDBClusterSnapshots
action.
An optional pagination token provided by a previous
+ * DescribeDBClusterSnapshots
request.
+ * If this parameter is specified, the response includes
+ * only records beyond the marker,
+ * up to the value specified by MaxRecords
.
Provides a list of DB cluster snapshots for the user.
+ */ + DBClusterSnapshots?: DBClusterSnapshot[]; +} + +/** + * @public + * + */ +export interface DescribeDBClusterSnapshotsMessage { + /** + * @public + *The ID of the DB cluster to retrieve the list of DB cluster snapshots for.
+ * This parameter can't be used in conjunction with the
+ * DBClusterSnapshotIdentifier
parameter.
+ * This parameter isn't case-sensitive.
Constraints:
+ *If supplied, must match the identifier of an existing DBCluster.
+ *A specific DB cluster snapshot identifier to describe.
+ * This parameter can't be used in conjunction with the
+ * DBClusterIdentifier
parameter.
+ * This value is stored as a lowercase string.
Constraints:
+ *If supplied, must match the identifier of an existing DBClusterSnapshot.
+ *If this identifier is for an automated snapshot, the SnapshotType
parameter must also be specified.
The type of DB cluster snapshots to be returned. You can specify one of the following values:
+ *
+ * automated
- Return all DB cluster snapshots that have been automatically taken by
+ * Amazon RDS for my Amazon Web Services account.
+ * manual
- Return all DB cluster snapshots that have been taken by my Amazon Web Services account.
+ * shared
- Return all manual DB cluster snapshots that have been shared to my Amazon Web Services account.
+ * public
- Return all DB cluster snapshots that have been marked as public.
If you don't specify a SnapshotType
value, then both automated and manual DB cluster snapshots are
+ * returned. You can include shared DB cluster snapshots with these results by enabling the IncludeShared
+ * parameter. You can include public DB cluster snapshots with these results by enabling the
+ * IncludePublic
parameter.
The IncludeShared
and IncludePublic
parameters don't apply for SnapshotType
values
+ * of manual
or automated
. The IncludePublic
parameter doesn't apply when SnapshotType
is
+ * set to shared
. The IncludeShared
parameter doesn't apply when SnapshotType
is set to
+ * public
.
A filter that specifies one or more DB cluster snapshots to describe.
+ *Supported filters:
+ *
+ * db-cluster-id
- Accepts DB cluster identifiers and DB
+ * cluster Amazon Resource Names (ARNs).
+ * db-cluster-snapshot-id
- Accepts DB cluster snapshot identifiers.
+ * snapshot-type
- Accepts types of DB cluster snapshots.
+ * engine
- Accepts names of database engines.
The maximum number of records to include in the response.
+ * If more records exist than the specified MaxRecords
value,
+ * a pagination token called a marker is included in the response so you can retrieve the remaining results.
Default: 100
+ *Constraints: Minimum 20, maximum 100.
+ */ + MaxRecords?: number; + + /** + * @public + *An optional pagination token provided by a previous
+ * DescribeDBClusterSnapshots
request.
+ * If this parameter is specified, the response includes
+ * only records beyond the marker,
+ * up to the value specified by MaxRecords
.
Specifies whether to include shared manual DB cluster snapshots + * from other Amazon Web Services accounts that this Amazon Web Services account has been given + * permission to copy or restore. By default, these snapshots are not included.
+ *You can give an Amazon Web Services account permission to restore a manual DB cluster snapshot from
+ * another Amazon Web Services account by the ModifyDBClusterSnapshotAttribute
API action.
Specifies whether to include manual DB cluster snapshots that are public and can be copied + * or restored by any Amazon Web Services account. By default, the public snapshots are not included.
+ *You can share a manual DB cluster snapshot as public by using the ModifyDBClusterSnapshotAttribute API action.
+ */ + IncludePublic?: boolean; + + /** + * @public + *A specific DB cluster resource ID to describe.
+ */ + DbClusterResourceId?: string; +} + +/** + * @public + *Contains the result of a successful invocation of the DescribeDBEngineVersions
action.
An optional pagination token provided by a previous request.
+ * If this parameter is specified, the response includes
+ * only records beyond the marker,
+ * up to the value specified by MaxRecords
.
A list of DBEngineVersion
elements.
The unique identifier of the integration.
+ */ + IntegrationIdentifier?: string; + + /** + * @public + *A filter that specifies one or more resources to return.
+ */ + Filters?: Filter[]; + + /** + * @public + *The maximum number of records to include in the response. If more records exist than
+ * the specified MaxRecords
value, a pagination token called a marker is
+ * included in the response so that you can retrieve the remaining results.
Default: 100
+ *Constraints: Minimum 20, maximum 100.
+ */ + MaxRecords?: number; + + /** + * @public + *An optional pagination token provided by a previous DescribeIntegrations
+ * request. If this parameter is specified, the response includes only records beyond the
+ * marker, up to the value specified by MaxRecords
.
A pagination token that can be used in a later DescribeIntegrations
+ * request.
A list of integrations.
+ */ + Integrations?: Integration[]; +} + /** * @public * diff --git a/clients/client-rds/src/pagination/DescribeIntegrationsPaginator.ts b/clients/client-rds/src/pagination/DescribeIntegrationsPaginator.ts new file mode 100644 index 0000000000000..1e98af6e65312 --- /dev/null +++ b/clients/client-rds/src/pagination/DescribeIntegrationsPaginator.ts @@ -0,0 +1,50 @@ +// smithy-typescript generated code +import { Paginator } from "@smithy/types"; + +import { + DescribeIntegrationsCommand, + DescribeIntegrationsCommandInput, + DescribeIntegrationsCommandOutput, +} from "../commands/DescribeIntegrationsCommand"; +import { RDSClient } from "../RDSClient"; +import { RDSPaginationConfiguration } from "./Interfaces"; + +/** + * @internal + */ +const makePagedClientRequest = async ( + client: RDSClient, + input: DescribeIntegrationsCommandInput, + ...args: any +): PromiseCreates a zero-ETL integration with Amazon Redshift. For more information, see Working\n with Amazon Aurora zero-ETL integrations with Amazon Redshift in the\n Amazon Aurora User Guide.
" + } + }, + "com.amazonaws.rds#CreateIntegrationMessage": { + "type": "structure", + "members": { + "SourceArn": { + "target": "com.amazonaws.rds#SourceArn", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "The Amazon Resource Name (ARN) of the Aurora DB cluster to use as the source for\n replication.
", + "smithy.api#required": {} + } + }, + "TargetArn": { + "target": "com.amazonaws.rds#Arn", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "The ARN of the Redshift data warehouse to use as the target for replication.
", + "smithy.api#required": {} + } + }, + "IntegrationName": { + "target": "com.amazonaws.rds#IntegrationName", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "The name of the integration.
", + "smithy.api#required": {} + } + }, + "KMSKeyId": { + "target": "com.amazonaws.rds#String", + "traits": { + "smithy.api#documentation": "The Amazon Web Services Key Management System (Amazon Web Services KMS) key identifier for the key to use to\n encrypt the integration. If you don't specify an encryption key, Aurora uses a default\n Amazon Web Services owned key.
" + } + }, + "AdditionalEncryptionContext": { + "target": "com.amazonaws.rds#EncryptionContextMap", + "traits": { + "smithy.api#documentation": "An optional set of non-secret key–value pairs that contains additional contextual\n information about the data. For more information, see Encryption\n context in the Amazon Web Services Key Management Service Developer\n Guide.
\nYou can only include this parameter if you specify the KMSKeyId
parameter.
Indicates whether the DB engine version supports forwarding write operations from reader DB instances \n to the writer DB instance in the DB cluster. By default, write operations aren't allowed on reader DB instances.
\nValid for: Aurora DB clusters only
" } + }, + "SupportsIntegrations": { + "target": "com.amazonaws.rds#Boolean", + "traits": { + "smithy.api#documentation": "Indicates whether the DB engine version supports Aurora zero-ETL integrations with\n Amazon Redshift.
" + } } }, "traits": { @@ -11853,6 +11959,45 @@ "smithy.api#output": {} } }, + "com.amazonaws.rds#DeleteIntegration": { + "type": "operation", + "input": { + "target": "com.amazonaws.rds#DeleteIntegrationMessage" + }, + "output": { + "target": "com.amazonaws.rds#Integration" + }, + "errors": [ + { + "target": "com.amazonaws.rds#IntegrationConflictOperationFault" + }, + { + "target": "com.amazonaws.rds#IntegrationNotFoundFault" + }, + { + "target": "com.amazonaws.rds#InvalidIntegrationStateFault" + } + ], + "traits": { + "smithy.api#documentation": "Deletes a zero-ETL integration with Amazon Redshift. For more information, see Deleting Amazon Aurora zero-ETL integrations with Amazon Redshift in the\n Amazon Aurora User Guide\n
" + } + }, + "com.amazonaws.rds#DeleteIntegrationMessage": { + "type": "structure", + "members": { + "IntegrationIdentifier": { + "target": "com.amazonaws.rds#IntegrationIdentifier", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "The unique identifier of the integration.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, "com.amazonaws.rds#DeleteOptionGroup": { "type": "operation", "input": { @@ -15511,6 +15656,81 @@ "smithy.api#input": {} } }, + "com.amazonaws.rds#DescribeIntegrations": { + "type": "operation", + "input": { + "target": "com.amazonaws.rds#DescribeIntegrationsMessage" + }, + "output": { + "target": "com.amazonaws.rds#DescribeIntegrationsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.rds#IntegrationNotFoundFault" + } + ], + "traits": { + "smithy.api#documentation": "Describe one or more zero-ETL integration with Amazon Redshift. For more information,\n see Viewing and monitoring Amazon Aurora zero-ETL integrations with Amazon Redshift in\n the Amazon Aurora User Guide\n
", + "smithy.api#paginated": { + "inputToken": "Marker", + "outputToken": "Marker", + "items": "Integrations", + "pageSize": "MaxRecords" + } + } + }, + "com.amazonaws.rds#DescribeIntegrationsMessage": { + "type": "structure", + "members": { + "IntegrationIdentifier": { + "target": "com.amazonaws.rds#IntegrationIdentifier", + "traits": { + "smithy.api#documentation": "The unique identifier of the integration.
" + } + }, + "Filters": { + "target": "com.amazonaws.rds#FilterList", + "traits": { + "smithy.api#documentation": "A filter that specifies one or more resources to return.
" + } + }, + "MaxRecords": { + "target": "com.amazonaws.rds#IntegerOptional", + "traits": { + "smithy.api#documentation": "The maximum number of records to include in the response. If more records exist than\n the specified MaxRecords
value, a pagination token called a marker is\n included in the response so that you can retrieve the remaining results.
Default: 100
\nConstraints: Minimum 20, maximum 100.
" + } + }, + "Marker": { + "target": "com.amazonaws.rds#Marker", + "traits": { + "smithy.api#documentation": "An optional pagination token provided by a previous DescribeIntegrations
\n request. If this parameter is specified, the response includes only records beyond the\n marker, up to the value specified by MaxRecords
.
A pagination token that can be used in a later DescribeIntegrations
\n request.
A list of integrations.
" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.rds#DescribeOptionGroupOptions": { "type": "operation", "input": { @@ -16702,6 +16922,15 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.rds#EncryptionContextMap": { + "type": "map", + "key": { + "target": "com.amazonaws.rds#String" + }, + "value": { + "target": "com.amazonaws.rds#String" + } + }, "com.amazonaws.rds#Endpoint": { "type": "structure", "members": { @@ -17863,6 +18092,256 @@ "com.amazonaws.rds#IntegerOptional": { "type": "integer" }, + "com.amazonaws.rds#Integration": { + "type": "structure", + "members": { + "SourceArn": { + "target": "com.amazonaws.rds#SourceArn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) of the Aurora DB cluster used as the source for\n replication.
" + } + }, + "TargetArn": { + "target": "com.amazonaws.rds#Arn", + "traits": { + "smithy.api#documentation": "The ARN of the Redshift data warehouse used as the target for replication.
" + } + }, + "IntegrationName": { + "target": "com.amazonaws.rds#IntegrationName", + "traits": { + "smithy.api#documentation": "The name of the integration.
" + } + }, + "IntegrationArn": { + "target": "com.amazonaws.rds#IntegrationArn", + "traits": { + "smithy.api#documentation": "The ARN of the integration.
" + } + }, + "KMSKeyId": { + "target": "com.amazonaws.rds#String", + "traits": { + "smithy.api#documentation": "The Amazon Web Services Key Management System (Amazon Web Services KMS) key identifier for the key used to to\n encrypt the integration.
" + } + }, + "AdditionalEncryptionContext": { + "target": "com.amazonaws.rds#EncryptionContextMap", + "traits": { + "smithy.api#documentation": "The encryption context for the integration. For more information, see Encryption context in the Amazon Web Services Key Management Service Developer\n Guide.
" + } + }, + "Status": { + "target": "com.amazonaws.rds#IntegrationStatus", + "traits": { + "smithy.api#documentation": "The current status of the integration.
" + } + }, + "Tags": { + "target": "com.amazonaws.rds#TagList" + }, + "CreateTime": { + "target": "com.amazonaws.rds#TStamp", + "traits": { + "smithy.api#documentation": "The time when the integration was created, in Universal Coordinated Time\n (UTC).
" + } + }, + "Errors": { + "target": "com.amazonaws.rds#IntegrationErrorList", + "traits": { + "smithy.api#documentation": "Any errors associated with the integration.
" + } + } + }, + "traits": { + "smithy.api#documentation": "An Aurora zero-ETL integration with Amazon Redshift. For more information, see Working\n with Amazon Aurora zero-ETL integrations with Amazon Redshift in the\n Amazon Aurora User Guide.
" + } + }, + "com.amazonaws.rds#IntegrationAlreadyExistsFault": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.rds#ExceptionMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "IntegrationAlreadyExistsFault", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "The integration you are trying to create already exists.
", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.rds#IntegrationArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^arn:aws[a-z\\-]*:rds(-[a-z]*)?:[a-z0-9\\-]*:[0-9]*:integration:[a-z][a-z0-9]*(-[a-zA-Z0-9]+)*\\/[a-zA-Z0-9_:\\-\\/]+$" + } + }, + "com.amazonaws.rds#IntegrationConflictOperationFault": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.rds#ExceptionMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "IntegrationConflictOperationFault", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "A conflicting conditional operation is currently in progress against this resource.\n Typically occurs when there are multiple requests being made to the same resource at the same time,\n and these requests conflict with each other.
", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.rds#IntegrationError": { + "type": "structure", + "members": { + "ErrorCode": { + "target": "com.amazonaws.rds#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "The error code associated with the integration.
", + "smithy.api#required": {} + } + }, + "ErrorMessage": { + "target": "com.amazonaws.rds#String", + "traits": { + "smithy.api#documentation": "A message explaining the error.
" + } + } + }, + "traits": { + "smithy.api#documentation": "An error associated with a zero-ETL integration with Amazon Redshift.
" + } + }, + "com.amazonaws.rds#IntegrationErrorList": { + "type": "list", + "member": { + "target": "com.amazonaws.rds#IntegrationError", + "traits": { + "smithy.api#xmlName": "IntegrationError" + } + } + }, + "com.amazonaws.rds#IntegrationIdentifier": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_:\\-\\/]+$" + } + }, + "com.amazonaws.rds#IntegrationList": { + "type": "list", + "member": { + "target": "com.amazonaws.rds#Integration", + "traits": { + "smithy.api#xmlName": "Integration" + } + } + }, + "com.amazonaws.rds#IntegrationName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 63 + }, + "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9]*(-[a-zA-Z0-9]+)*$" + } + }, + "com.amazonaws.rds#IntegrationNotFoundFault": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.rds#ExceptionMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "IntegrationNotFoundFault", + "httpResponseCode": 404 + }, + "smithy.api#documentation": "The specified integration could not be found.
", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.rds#IntegrationQuotaExceededFault": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.rds#ExceptionMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "IntegrationQuotaExceededFault", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "You can't crate any more zero-ETL integrations because the quota has been reached.
", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.rds#IntegrationStatus": { + "type": "enum", + "members": { + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "creating" + } + }, + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "active" + } + }, + "MODIFYING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "modifying" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleting" + } + }, + "SYNCING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "syncing" + } + }, + "NEEDS_ATTENTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "needs_attention" + } + } + } + }, "com.amazonaws.rds#InvalidBlueGreenDeploymentStateFault": { "type": "structure", "members": { @@ -18237,6 +18716,23 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.rds#InvalidIntegrationStateFault": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.rds#ExceptionMessage" + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "InvalidIntegrationStateFault", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "The integration is in an invalid state and can't perform the requested operation.
", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, "com.amazonaws.rds#InvalidOptionGroupStateFault": { "type": "structure", "members": { @@ -18381,6 +18877,9 @@ }, { "target": "com.amazonaws.rds#DBSnapshotNotFoundFault" + }, + { + "target": "com.amazonaws.rds#IntegrationNotFoundFault" } ], "traits": { @@ -18478,6 +18977,15 @@ "com.amazonaws.rds#LongOptional": { "type": "long" }, + "com.amazonaws.rds#Marker": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 340 + } + } + }, "com.amazonaws.rds#MasterUserSecret": { "type": "structure", "members": { @@ -23031,6 +23539,9 @@ }, { "target": "com.amazonaws.rds#DBSnapshotNotFoundFault" + }, + { + "target": "com.amazonaws.rds#IntegrationNotFoundFault" } ], "traits": { @@ -26079,6 +26590,16 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.rds#SourceArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^arn:aws[a-z\\-]*:rds(-[a-z]*)?:[a-z0-9\\-]*:[0-9]*:(cluster|db):[a-z][a-z0-9]*(-[a-z0-9]+)*$" + } + }, "com.amazonaws.rds#SourceClusterNotSupportedFault": { "type": "structure", "members": { @@ -27823,6 +28344,12 @@ "traits": { "smithy.api#documentation": "Indicates whether the target engine version supports forwarding write operations from reader DB instances \n to the writer DB instance in the DB cluster. By default, write operations aren't allowed on reader DB instances.
\nValid for: Aurora DB clusters only
" } + }, + "SupportsIntegrations": { + "target": "com.amazonaws.rds#BooleanOptional", + "traits": { + "smithy.api#documentation": "Indicates whether the DB engine version supports Aurora zero-ETL integrations with\n Amazon Redshift.
" + } } }, "traits": {