From b6e41dd2b86dacfdfece9c7bc50364de84b3bce9 Mon Sep 17 00:00:00 2001
From: awstools
+DeregisterNamespace
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/redshift/command/DeregisterNamespaceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Interface/DeregisterNamespaceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Interface/DeregisterNamespaceCommandOutput/)
+
@@ -1231,6 +1239,14 @@ RebootCluster
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/redshift/command/RebootClusterCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Interface/RebootClusterCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Interface/RebootClusterCommandOutput/)
+
+RegisterNamespace
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/redshift/command/RegisterNamespaceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Interface/RegisterNamespaceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Interface/RegisterNamespaceCommandOutput/)
+
diff --git a/clients/client-redshift/src/Redshift.ts b/clients/client-redshift/src/Redshift.ts
index df983290ecc1..ae88518d0cd0 100644
--- a/clients/client-redshift/src/Redshift.ts
+++ b/clients/client-redshift/src/Redshift.ts
@@ -240,6 +240,11 @@ import {
DeleteUsageLimitCommandInput,
DeleteUsageLimitCommandOutput,
} from "./commands/DeleteUsageLimitCommand";
+import {
+ DeregisterNamespaceCommand,
+ DeregisterNamespaceCommandInput,
+ DeregisterNamespaceCommandOutput,
+} from "./commands/DeregisterNamespaceCommand";
import {
DescribeAccountAttributesCommand,
DescribeAccountAttributesCommandInput,
@@ -620,6 +625,11 @@ import {
RebootClusterCommandInput,
RebootClusterCommandOutput,
} from "./commands/RebootClusterCommand";
+import {
+ RegisterNamespaceCommand,
+ RegisterNamespaceCommandInput,
+ RegisterNamespaceCommandOutput,
+} from "./commands/RegisterNamespaceCommand";
import {
RejectDataShareCommand,
RejectDataShareCommandInput,
@@ -728,6 +738,7 @@ const commands = {
DeleteSnapshotScheduleCommand,
DeleteTagsCommand,
DeleteUsageLimitCommand,
+ DeregisterNamespaceCommand,
DescribeAccountAttributesCommand,
DescribeAuthenticationProfilesCommand,
DescribeClusterDbRevisionsCommand,
@@ -804,6 +815,7 @@ const commands = {
PurchaseReservedNodeOfferingCommand,
PutResourcePolicyCommand,
RebootClusterCommand,
+ RegisterNamespaceCommand,
RejectDataShareCommand,
ResetClusterParameterGroupCommand,
ResizeClusterCommand,
@@ -1627,6 +1639,23 @@ export interface Redshift {
cb: (err: any, data?: DeleteUsageLimitCommandOutput) => void
): void;
+ /**
+ * @see {@link DeregisterNamespaceCommand}
+ */
+ deregisterNamespace(
+ args: DeregisterNamespaceCommandInput,
+ options?: __HttpHandlerOptions
+ ): Promise
VPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that + * you own in a Region from reaching or being reached from the internet through internet + * gateways and egress-only internet gateways. If a subnet group for a + * provisioned cluster is in an account with VPC BPA turned on, the following capabilities + * are blocked:
+ *Creating a public cluster
+ *Restoring a public cluster
+ *Modifying a private cluster to be public
+ *Adding a subnet with VPC BPA turned on to the subnet group when there's at + * least one public cluster within the group
+ *For more information about VPC BPA, see Block public access to VPCs and + * subnets in the Amazon VPC User Guide.
* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-redshift/src/commands/DeauthorizeDataShareCommand.ts b/clients/client-redshift/src/commands/DeauthorizeDataShareCommand.ts index 6e31fb133d5f..c5395a5037a5 100644 --- a/clients/client-redshift/src/commands/DeauthorizeDataShareCommand.ts +++ b/clients/client-redshift/src/commands/DeauthorizeDataShareCommand.ts @@ -57,6 +57,7 @@ export interface DeauthorizeDataShareCommandOutput extends DataShare, __Metadata * // }, * // ], * // ManagedBy: "STRING_VALUE", + * // DataShareType: "INTERNAL", * // }; * * ``` diff --git a/clients/client-redshift/src/commands/DeregisterNamespaceCommand.ts b/clients/client-redshift/src/commands/DeregisterNamespaceCommand.ts new file mode 100644 index 000000000000..6196e254ebb9 --- /dev/null +++ b/clients/client-redshift/src/commands/DeregisterNamespaceCommand.ts @@ -0,0 +1,114 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { DeregisterNamespaceInputMessage } from "../models/models_0"; +import { DeregisterNamespaceOutputMessage } from "../models/models_1"; +import { de_DeregisterNamespaceCommand, se_DeregisterNamespaceCommand } from "../protocols/Aws_query"; +import { RedshiftClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../RedshiftClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DeregisterNamespaceCommand}. + */ +export interface DeregisterNamespaceCommandInput extends DeregisterNamespaceInputMessage {} +/** + * @public + * + * The output of {@link DeregisterNamespaceCommand}. + */ +export interface DeregisterNamespaceCommandOutput extends DeregisterNamespaceOutputMessage, __MetadataBearer {} + +/** + *Deregisters a cluster or serverless namespace from the Amazon Web Services Glue Data Catalog.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { RedshiftClient, DeregisterNamespaceCommand } from "@aws-sdk/client-redshift"; // ES Modules import + * // const { RedshiftClient, DeregisterNamespaceCommand } = require("@aws-sdk/client-redshift"); // CommonJS import + * const client = new RedshiftClient(config); + * const input = { // DeregisterNamespaceInputMessage + * NamespaceIdentifier: { // NamespaceIdentifierUnion Union: only one key present + * ServerlessIdentifier: { // ServerlessIdentifier + * NamespaceIdentifier: "STRING_VALUE", // required + * WorkgroupIdentifier: "STRING_VALUE", // required + * }, + * ProvisionedIdentifier: { // ProvisionedIdentifier + * ClusterIdentifier: "STRING_VALUE", // required + * }, + * }, + * ConsumerIdentifiers: [ // ConsumerIdentifierList // required + * "STRING_VALUE", + * ], + * }; + * const command = new DeregisterNamespaceCommand(input); + * const response = await client.send(command); + * // { // DeregisterNamespaceOutputMessage + * // Status: "Registering" || "Deregistering", + * // }; + * + * ``` + * + * @param DeregisterNamespaceCommandInput - {@link DeregisterNamespaceCommandInput} + * @returns {@link DeregisterNamespaceCommandOutput} + * @see {@link DeregisterNamespaceCommandInput} for command's `input` shape. + * @see {@link DeregisterNamespaceCommandOutput} for command's `response` shape. + * @see {@link RedshiftClientResolvedConfig | config} for RedshiftClient's `config` shape. + * + * @throws {@link ClusterNotFoundFault} (client fault) + *The ClusterIdentifier
parameter does not refer to an existing cluster.
+ *
The specified cluster is not in the available
state.
The namespace isn't valid because the namespace doesn't exist. Provide a valid namespace.
+ * + * @throws {@link RedshiftServiceException} + *Base exception class for all service exceptions from Redshift service.
+ * + * @public + */ +export class DeregisterNamespaceCommand extends $Command + .classBuilder< + DeregisterNamespaceCommandInput, + DeregisterNamespaceCommandOutput, + RedshiftClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: RedshiftClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("RedshiftServiceVersion20121201", "DeregisterNamespace", {}) + .n("RedshiftClient", "DeregisterNamespaceCommand") + .f(void 0, void 0) + .ser(se_DeregisterNamespaceCommand) + .de(de_DeregisterNamespaceCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: DeregisterNamespaceInputMessage; + output: DeregisterNamespaceOutputMessage; + }; + sdk: { + input: DeregisterNamespaceCommandInput; + output: DeregisterNamespaceCommandOutput; + }; + }; +} diff --git a/clients/client-redshift/src/commands/DescribeAccountAttributesCommand.ts b/clients/client-redshift/src/commands/DescribeAccountAttributesCommand.ts index 03569968143a..b832f3c5db33 100644 --- a/clients/client-redshift/src/commands/DescribeAccountAttributesCommand.ts +++ b/clients/client-redshift/src/commands/DescribeAccountAttributesCommand.ts @@ -5,7 +5,8 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { AccountAttributeList, DescribeAccountAttributesMessage } from "../models/models_0"; +import { AccountAttributeList } from "../models/models_0"; +import { DescribeAccountAttributesMessage } from "../models/models_1"; import { de_DescribeAccountAttributesCommand, se_DescribeAccountAttributesCommand } from "../protocols/Aws_query"; import { RedshiftClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../RedshiftClient"; diff --git a/clients/client-redshift/src/commands/DescribeAuthenticationProfilesCommand.ts b/clients/client-redshift/src/commands/DescribeAuthenticationProfilesCommand.ts index 9aa34d7fb319..3d9260311f93 100644 --- a/clients/client-redshift/src/commands/DescribeAuthenticationProfilesCommand.ts +++ b/clients/client-redshift/src/commands/DescribeAuthenticationProfilesCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { DescribeAuthenticationProfilesMessage, DescribeAuthenticationProfilesResult } from "../models/models_0"; +import { DescribeAuthenticationProfilesMessage, DescribeAuthenticationProfilesResult } from "../models/models_1"; import { de_DescribeAuthenticationProfilesCommand, se_DescribeAuthenticationProfilesCommand, diff --git a/clients/client-redshift/src/commands/DescribeClusterDbRevisionsCommand.ts b/clients/client-redshift/src/commands/DescribeClusterDbRevisionsCommand.ts index 999f82856f92..c848cae56a74 100644 --- a/clients/client-redshift/src/commands/DescribeClusterDbRevisionsCommand.ts +++ b/clients/client-redshift/src/commands/DescribeClusterDbRevisionsCommand.ts @@ -5,7 +5,8 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ClusterDbRevisionsMessage, DescribeClusterDbRevisionsMessage } from "../models/models_0"; +import { ClusterDbRevisionsMessage } from "../models/models_0"; +import { DescribeClusterDbRevisionsMessage } from "../models/models_1"; import { de_DescribeClusterDbRevisionsCommand, se_DescribeClusterDbRevisionsCommand } from "../protocols/Aws_query"; import { RedshiftClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../RedshiftClient"; diff --git a/clients/client-redshift/src/commands/DescribeClusterParameterGroupsCommand.ts b/clients/client-redshift/src/commands/DescribeClusterParameterGroupsCommand.ts index 08f358c19afb..b47642df8a56 100644 --- a/clients/client-redshift/src/commands/DescribeClusterParameterGroupsCommand.ts +++ b/clients/client-redshift/src/commands/DescribeClusterParameterGroupsCommand.ts @@ -5,7 +5,8 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ClusterParameterGroupsMessage, DescribeClusterParameterGroupsMessage } from "../models/models_0"; +import { ClusterParameterGroupsMessage } from "../models/models_0"; +import { DescribeClusterParameterGroupsMessage } from "../models/models_1"; import { de_DescribeClusterParameterGroupsCommand, se_DescribeClusterParameterGroupsCommand, diff --git a/clients/client-redshift/src/commands/DescribeDataSharesCommand.ts b/clients/client-redshift/src/commands/DescribeDataSharesCommand.ts index 1d0de23cfdf8..39dad97e41b0 100644 --- a/clients/client-redshift/src/commands/DescribeDataSharesCommand.ts +++ b/clients/client-redshift/src/commands/DescribeDataSharesCommand.ts @@ -61,6 +61,7 @@ export interface DescribeDataSharesCommandOutput extends DescribeDataSharesResul * // }, * // ], * // ManagedBy: "STRING_VALUE", + * // DataShareType: "INTERNAL", * // }, * // ], * // Marker: "STRING_VALUE", diff --git a/clients/client-redshift/src/commands/DescribeDataSharesForConsumerCommand.ts b/clients/client-redshift/src/commands/DescribeDataSharesForConsumerCommand.ts index 312c09ea9496..9e3180061912 100644 --- a/clients/client-redshift/src/commands/DescribeDataSharesForConsumerCommand.ts +++ b/clients/client-redshift/src/commands/DescribeDataSharesForConsumerCommand.ts @@ -66,6 +66,7 @@ export interface DescribeDataSharesForConsumerCommandOutput * // }, * // ], * // ManagedBy: "STRING_VALUE", + * // DataShareType: "INTERNAL", * // }, * // ], * // Marker: "STRING_VALUE", diff --git a/clients/client-redshift/src/commands/DescribeDataSharesForProducerCommand.ts b/clients/client-redshift/src/commands/DescribeDataSharesForProducerCommand.ts index b7cd42a99cab..915265ee8e64 100644 --- a/clients/client-redshift/src/commands/DescribeDataSharesForProducerCommand.ts +++ b/clients/client-redshift/src/commands/DescribeDataSharesForProducerCommand.ts @@ -66,6 +66,7 @@ export interface DescribeDataSharesForProducerCommandOutput * // }, * // ], * // ManagedBy: "STRING_VALUE", + * // DataShareType: "INTERNAL", * // }, * // ], * // Marker: "STRING_VALUE", diff --git a/clients/client-redshift/src/commands/DisassociateDataShareConsumerCommand.ts b/clients/client-redshift/src/commands/DisassociateDataShareConsumerCommand.ts index c5bac10ad010..4a6a160774bd 100644 --- a/clients/client-redshift/src/commands/DisassociateDataShareConsumerCommand.ts +++ b/clients/client-redshift/src/commands/DisassociateDataShareConsumerCommand.ts @@ -64,6 +64,7 @@ export interface DisassociateDataShareConsumerCommandOutput extends DataShare, _ * // }, * // ], * // ManagedBy: "STRING_VALUE", + * // DataShareType: "INTERNAL", * // }; * * ``` diff --git a/clients/client-redshift/src/commands/ModifyClusterCommand.ts b/clients/client-redshift/src/commands/ModifyClusterCommand.ts index e5e3a66ef663..352e3fecdec2 100644 --- a/clients/client-redshift/src/commands/ModifyClusterCommand.ts +++ b/clients/client-redshift/src/commands/ModifyClusterCommand.ts @@ -42,6 +42,28 @@ export interface ModifyClusterCommandOutput extends ModifyClusterResult, __Metad * For more information about managing clusters, go to * Amazon Redshift Clusters * in the Amazon Redshift Cluster Management Guide. + *VPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that + * you own in a Region from reaching or being reached from the internet through internet + * gateways and egress-only internet gateways. If a subnet group for a + * provisioned cluster is in an account with VPC BPA turned on, the following capabilities + * are blocked:
+ *Creating a public cluster
+ *Restoring a public cluster
+ *Modifying a private cluster to be public
+ *Adding a subnet with VPC BPA turned on to the subnet group when there's at + * least one public cluster within the group
+ *For more information about VPC BPA, see Block public access to VPCs and + * subnets in the Amazon VPC User Guide.
* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-redshift/src/commands/ModifyClusterSubnetGroupCommand.ts b/clients/client-redshift/src/commands/ModifyClusterSubnetGroupCommand.ts index 899debe38740..4fec3b4ab46d 100644 --- a/clients/client-redshift/src/commands/ModifyClusterSubnetGroupCommand.ts +++ b/clients/client-redshift/src/commands/ModifyClusterSubnetGroupCommand.ts @@ -30,6 +30,28 @@ export interface ModifyClusterSubnetGroupCommandOutput extends ModifyClusterSubn /** *Modifies a cluster subnet group to include the specified list of VPC subnets. The * operation replaces the existing list of subnets with the new list of subnets.
+ *VPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that + * you own in a Region from reaching or being reached from the internet through internet + * gateways and egress-only internet gateways. If a subnet group for a + * provisioned cluster is in an account with VPC BPA turned on, the following capabilities + * are blocked:
+ *Creating a public cluster
+ *Restoring a public cluster
+ *Modifying a private cluster to be public
+ *Adding a subnet with VPC BPA turned on to the subnet group when there's at + * least one public cluster within the group
+ *For more information about VPC BPA, see Block public access to VPCs and + * subnets in the Amazon VPC User Guide.
* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-redshift/src/commands/RegisterNamespaceCommand.ts b/clients/client-redshift/src/commands/RegisterNamespaceCommand.ts new file mode 100644 index 000000000000..3ddeedecb0bc --- /dev/null +++ b/clients/client-redshift/src/commands/RegisterNamespaceCommand.ts @@ -0,0 +1,113 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { RegisterNamespaceInputMessage, RegisterNamespaceOutputMessage } from "../models/models_1"; +import { de_RegisterNamespaceCommand, se_RegisterNamespaceCommand } from "../protocols/Aws_query"; +import { RedshiftClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../RedshiftClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link RegisterNamespaceCommand}. + */ +export interface RegisterNamespaceCommandInput extends RegisterNamespaceInputMessage {} +/** + * @public + * + * The output of {@link RegisterNamespaceCommand}. + */ +export interface RegisterNamespaceCommandOutput extends RegisterNamespaceOutputMessage, __MetadataBearer {} + +/** + *Registers a cluster or serverless namespace to the Amazon Web Services Glue Data Catalog.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { RedshiftClient, RegisterNamespaceCommand } from "@aws-sdk/client-redshift"; // ES Modules import + * // const { RedshiftClient, RegisterNamespaceCommand } = require("@aws-sdk/client-redshift"); // CommonJS import + * const client = new RedshiftClient(config); + * const input = { // RegisterNamespaceInputMessage + * NamespaceIdentifier: { // NamespaceIdentifierUnion Union: only one key present + * ServerlessIdentifier: { // ServerlessIdentifier + * NamespaceIdentifier: "STRING_VALUE", // required + * WorkgroupIdentifier: "STRING_VALUE", // required + * }, + * ProvisionedIdentifier: { // ProvisionedIdentifier + * ClusterIdentifier: "STRING_VALUE", // required + * }, + * }, + * ConsumerIdentifiers: [ // ConsumerIdentifierList // required + * "STRING_VALUE", + * ], + * }; + * const command = new RegisterNamespaceCommand(input); + * const response = await client.send(command); + * // { // RegisterNamespaceOutputMessage + * // Status: "Registering" || "Deregistering", + * // }; + * + * ``` + * + * @param RegisterNamespaceCommandInput - {@link RegisterNamespaceCommandInput} + * @returns {@link RegisterNamespaceCommandOutput} + * @see {@link RegisterNamespaceCommandInput} for command's `input` shape. + * @see {@link RegisterNamespaceCommandOutput} for command's `response` shape. + * @see {@link RedshiftClientResolvedConfig | config} for RedshiftClient's `config` shape. + * + * @throws {@link ClusterNotFoundFault} (client fault) + *The ClusterIdentifier
parameter does not refer to an existing cluster.
+ *
The specified cluster is not in the available
state.
The namespace isn't valid because the namespace doesn't exist. Provide a valid namespace.
+ * + * @throws {@link RedshiftServiceException} + *Base exception class for all service exceptions from Redshift service.
+ * + * @public + */ +export class RegisterNamespaceCommand extends $Command + .classBuilder< + RegisterNamespaceCommandInput, + RegisterNamespaceCommandOutput, + RedshiftClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: RedshiftClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("RedshiftServiceVersion20121201", "RegisterNamespace", {}) + .n("RedshiftClient", "RegisterNamespaceCommand") + .f(void 0, void 0) + .ser(se_RegisterNamespaceCommand) + .de(de_RegisterNamespaceCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: RegisterNamespaceInputMessage; + output: RegisterNamespaceOutputMessage; + }; + sdk: { + input: RegisterNamespaceCommandInput; + output: RegisterNamespaceCommandOutput; + }; + }; +} diff --git a/clients/client-redshift/src/commands/RejectDataShareCommand.ts b/clients/client-redshift/src/commands/RejectDataShareCommand.ts index f987c437678e..71aca261be9b 100644 --- a/clients/client-redshift/src/commands/RejectDataShareCommand.ts +++ b/clients/client-redshift/src/commands/RejectDataShareCommand.ts @@ -57,6 +57,7 @@ export interface RejectDataShareCommandOutput extends DataShare, __MetadataBeare * // }, * // ], * // ManagedBy: "STRING_VALUE", + * // DataShareType: "INTERNAL", * // }; * * ``` diff --git a/clients/client-redshift/src/commands/RestoreFromClusterSnapshotCommand.ts b/clients/client-redshift/src/commands/RestoreFromClusterSnapshotCommand.ts index 792c30b5f983..d15ec398446a 100644 --- a/clients/client-redshift/src/commands/RestoreFromClusterSnapshotCommand.ts +++ b/clients/client-redshift/src/commands/RestoreFromClusterSnapshotCommand.ts @@ -40,6 +40,28 @@ export interface RestoreFromClusterSnapshotCommandOutput extends RestoreFromClus * choose to change to another DS node type of the same size during restore. *If you restore a cluster into a VPC, you must provide a cluster subnet group where * you want the cluster restored.
+ *VPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that + * you own in a Region from reaching or being reached from the internet through internet + * gateways and egress-only internet gateways. If a subnet group for a + * provisioned cluster is in an account with VPC BPA turned on, the following capabilities + * are blocked:
+ *Creating a public cluster
+ *Restoring a public cluster
+ *Modifying a private cluster to be public
+ *Adding a subnet with VPC BPA turned on to the subnet group when there's at + * least one public cluster within the group
+ *For more information about VPC BPA, see Block public access to VPCs and + * subnets in the Amazon VPC User Guide.
** For more information about working with snapshots, go to * Amazon Redshift Snapshots diff --git a/clients/client-redshift/src/commands/index.ts b/clients/client-redshift/src/commands/index.ts index 9ce8e50be4fc..b89f37c22277 100644 --- a/clients/client-redshift/src/commands/index.ts +++ b/clients/client-redshift/src/commands/index.ts @@ -49,6 +49,7 @@ export * from "./DeleteSnapshotCopyGrantCommand"; export * from "./DeleteSnapshotScheduleCommand"; export * from "./DeleteTagsCommand"; export * from "./DeleteUsageLimitCommand"; +export * from "./DeregisterNamespaceCommand"; export * from "./DescribeAccountAttributesCommand"; export * from "./DescribeAuthenticationProfilesCommand"; export * from "./DescribeClusterDbRevisionsCommand"; @@ -125,6 +126,7 @@ export * from "./PauseClusterCommand"; export * from "./PurchaseReservedNodeOfferingCommand"; export * from "./PutResourcePolicyCommand"; export * from "./RebootClusterCommand"; +export * from "./RegisterNamespaceCommand"; export * from "./RejectDataShareCommand"; export * from "./ResetClusterParameterGroupCommand"; export * from "./ResizeClusterCommand"; diff --git a/clients/client-redshift/src/models/models_0.ts b/clients/client-redshift/src/models/models_0.ts index 9dc04dbc45de..a8d42fd8d734 100644 --- a/clients/client-redshift/src/models/models_0.ts +++ b/clients/client-redshift/src/models/models_0.ts @@ -692,6 +692,19 @@ export interface DataShareAssociation { ConsumerAcceptedWrites?: boolean | undefined; } +/** + * @public + * @enum + */ +export const DataShareType = { + INTERNAL: "INTERNAL", +} as const; + +/** + * @public + */ +export type DataShareType = (typeof DataShareType)[keyof typeof DataShareType]; + /** * @public */ @@ -726,6 +739,12 @@ export interface DataShare { * @public */ ManagedBy?: string | undefined; + + /** + *
The type of the datashare created by RegisterNamespace.
+ * @public + */ + DataShareType?: DataShareType | undefined; } /** @@ -8595,133 +8614,109 @@ export class UsageLimitNotFoundFault extends __BaseException { } /** + *The identifier for a provisioned cluster.
* @public */ -export interface DescribeAccountAttributesMessage { +export interface ProvisionedIdentifier { /** - *A list of attribute names.
+ *The unique identifier for the provisioned cluster.
* @public */ - AttributeNames?: string[] | undefined; + ClusterIdentifier: string | undefined; } /** + *The identifier for a serverless namespace.
* @public */ -export interface DescribeAuthenticationProfilesMessage { +export interface ServerlessIdentifier { /** - *The name of the authentication profile to describe. If not specified then all authentication profiles owned by the account are listed.
+ *The unique identifier for the serverless namespace.
* @public */ - AuthenticationProfileName?: string | undefined; -} + NamespaceIdentifier: string | undefined; -/** - * @public - */ -export interface DescribeAuthenticationProfilesResult { /** - *The list of authentication profiles.
+ *The unique identifier for the workgroup + * associated with the serverless namespace.
* @public */ - AuthenticationProfiles?: AuthenticationProfile[] | undefined; + WorkgroupIdentifier: string | undefined; } /** + *Object to store union of values for a + * provisioned cluster or serverless namespace’s identifier.
* @public */ -export interface DescribeClusterDbRevisionsMessage { - /** - *A unique identifier for a cluster whose ClusterDbRevisions
you are
- * requesting. This parameter is case sensitive. All clusters defined for an account are
- * returned by default.
The maximum number of response records to return in each call. If the number of
- * remaining response records exceeds the specified MaxRecords value, a value is returned
- * in the marker
field of the response. You can retrieve the next set of
- * response records by providing the returned marker
value in the
- * marker
parameter and retrying the request.
Default: 100
- *Constraints: minimum 20, maximum 100.
- * @public - */ - MaxRecords?: number | undefined; - - /** - *An optional parameter that specifies the starting point for returning a set of
- * response records. When the results of a DescribeClusterDbRevisions
request
- * exceed the value specified in MaxRecords
, Amazon Redshift returns a value
- * in the marker
field of the response. You can retrieve the next set of
- * response records by providing the returned marker
value in the
- * marker
parameter and retrying the request.
Constraints: You can specify either the ClusterIdentifier
parameter, or
- * the marker
parameter, but not both.
The name of a specific parameter group for which to return details. By default, - * details about all parameter groups and the default parameter group are - * returned.
+ *The identifier for a serverless namespace.
* @public */ - ParameterGroupName?: string | undefined; + export interface ServerlessIdentifierMember { + ServerlessIdentifier: ServerlessIdentifier; + ProvisionedIdentifier?: never; + $unknown?: never; + } /** - *The maximum number of response records to return in each call. If the number of
- * remaining response records exceeds the specified MaxRecords
value, a value
- * is returned in a marker
field of the response. You can retrieve the next
- * set of records by retrying the command with the returned marker value.
Default: 100
- *
Constraints: minimum 20, maximum 100.
+ *The identifier for a provisioned cluster.
* @public */ - MaxRecords?: number | undefined; + export interface ProvisionedIdentifierMember { + ServerlessIdentifier?: never; + ProvisionedIdentifier: ProvisionedIdentifier; + $unknown?: never; + } /** - *An optional parameter that specifies the starting point to return a set of response
- * records. When the results of a DescribeClusterParameterGroups request
- * exceed the value specified in MaxRecords
, Amazon Web Services returns a value in the
- * Marker
field of the response. You can retrieve the next set of response
- * records by providing the returned marker value in the Marker
parameter and
- * retrying the request.
A tag key or keys for which you want to return all matching cluster parameter
- * groups that are associated with the specified key or keys. For example, suppose that you
- * have parameter groups that are tagged with keys called owner
and
- * environment
. If you specify both of these tag keys in the request,
- * Amazon Redshift returns a response with the parameter groups that have either or both of these
- * tag keys associated with them.
The unique identifier of the cluster or + * serverless namespace that you want to deregister.
* @public */ - TagKeys?: string[] | undefined; + NamespaceIdentifier: NamespaceIdentifierUnion | undefined; /** - *A tag value or values for which you want to return all matching cluster parameter
- * groups that are associated with the specified tag value or values. For example, suppose
- * that you have parameter groups that are tagged with values called admin
and
- * test
. If you specify both of these tag values in the request, Amazon Redshift
- * returns a response with the parameter groups that have either or both of these tag
- * values associated with them.
An array containing the ID of the consumer account + * that you want to deregister the cluster or serverless namespace from.
* @public */ - TagValues?: string[] | undefined; + ConsumerIdentifiers: string[] | undefined; } /** diff --git a/clients/client-redshift/src/models/models_1.ts b/clients/client-redshift/src/models/models_1.ts index 23a27f02f281..90134370d074 100644 --- a/clients/client-redshift/src/models/models_1.ts +++ b/clients/client-redshift/src/models/models_1.ts @@ -5,6 +5,7 @@ import { ActionType, AquaConfiguration, AquaConfigurationStatus, + AuthenticationProfile, AuthorizedTokenIssuer, AvailabilityZone, Cluster, @@ -22,6 +23,7 @@ import { HsmConfiguration, Integration, IntegrationError, + NamespaceIdentifierUnion, Parameter, RecurringCharge, RedshiftIdcApplication, @@ -43,6 +45,163 @@ import { import { RedshiftServiceException as __BaseException } from "./RedshiftServiceException"; +/** + * @public + * @enum + */ +export const NamespaceRegistrationStatus = { + DEREGISTERING: "Deregistering", + REGISTERING: "Registering", +} as const; + +/** + * @public + */ +export type NamespaceRegistrationStatus = + (typeof NamespaceRegistrationStatus)[keyof typeof NamespaceRegistrationStatus]; + +/** + * @public + */ +export interface DeregisterNamespaceOutputMessage { + /** + *The registration status of the cluster or + * serverless namespace.
+ * @public + */ + Status?: NamespaceRegistrationStatus | undefined; +} + +/** + * @public + */ +export interface DescribeAccountAttributesMessage { + /** + *A list of attribute names.
+ * @public + */ + AttributeNames?: string[] | undefined; +} + +/** + * @public + */ +export interface DescribeAuthenticationProfilesMessage { + /** + *The name of the authentication profile to describe. If not specified then all authentication profiles owned by the account are listed.
+ * @public + */ + AuthenticationProfileName?: string | undefined; +} + +/** + * @public + */ +export interface DescribeAuthenticationProfilesResult { + /** + *The list of authentication profiles.
+ * @public + */ + AuthenticationProfiles?: AuthenticationProfile[] | undefined; +} + +/** + * @public + */ +export interface DescribeClusterDbRevisionsMessage { + /** + *A unique identifier for a cluster whose ClusterDbRevisions
you are
+ * requesting. This parameter is case sensitive. All clusters defined for an account are
+ * returned by default.
The maximum number of response records to return in each call. If the number of
+ * remaining response records exceeds the specified MaxRecords value, a value is returned
+ * in the marker
field of the response. You can retrieve the next set of
+ * response records by providing the returned marker
value in the
+ * marker
parameter and retrying the request.
Default: 100
+ *Constraints: minimum 20, maximum 100.
+ * @public + */ + MaxRecords?: number | undefined; + + /** + *An optional parameter that specifies the starting point for returning a set of
+ * response records. When the results of a DescribeClusterDbRevisions
request
+ * exceed the value specified in MaxRecords
, Amazon Redshift returns a value
+ * in the marker
field of the response. You can retrieve the next set of
+ * response records by providing the returned marker
value in the
+ * marker
parameter and retrying the request.
Constraints: You can specify either the ClusterIdentifier
parameter, or
+ * the marker
parameter, but not both.
The name of a specific parameter group for which to return details. By default, + * details about all parameter groups and the default parameter group are + * returned.
+ * @public + */ + ParameterGroupName?: string | undefined; + + /** + *The maximum number of response records to return in each call. If the number of
+ * remaining response records exceeds the specified MaxRecords
value, a value
+ * is returned in a marker
field of the response. You can retrieve the next
+ * set of records by retrying the command with the returned marker value.
Default: 100
+ *
Constraints: minimum 20, maximum 100.
+ * @public + */ + MaxRecords?: number | undefined; + + /** + *An optional parameter that specifies the starting point to return a set of response
+ * records. When the results of a DescribeClusterParameterGroups request
+ * exceed the value specified in MaxRecords
, Amazon Web Services returns a value in the
+ * Marker
field of the response. You can retrieve the next set of response
+ * records by providing the returned marker value in the Marker
parameter and
+ * retrying the request.
A tag key or keys for which you want to return all matching cluster parameter
+ * groups that are associated with the specified key or keys. For example, suppose that you
+ * have parameter groups that are tagged with keys called owner
and
+ * environment
. If you specify both of these tag keys in the request,
+ * Amazon Redshift returns a response with the parameter groups that have either or both of these
+ * tag keys associated with them.
A tag value or values for which you want to return all matching cluster parameter
+ * groups that are associated with the specified tag value or values. For example, suppose
+ * that you have parameter groups that are tagged with values called admin
and
+ * test
. If you specify both of these tag values in the request, Amazon Redshift
+ * returns a response with the parameter groups that have either or both of these tag
+ * values associated with them.
The unique identifier of the cluster or + * serverless namespace that you want to register.
+ * @public + */ + NamespaceIdentifier: NamespaceIdentifierUnion | undefined; + + /** + *An array containing the ID of the consumer account + * that you want to register the namespace to.
+ * @public + */ + ConsumerIdentifiers: string[] | undefined; +} + +/** + * @public + */ +export interface RegisterNamespaceOutputMessage { + /** + *The registration status of the cluster or + * serverless namespace.
+ * @public + */ + Status?: NamespaceRegistrationStatus | undefined; +} + /** * @public */ diff --git a/clients/client-redshift/src/protocols/Aws_query.ts b/clients/client-redshift/src/protocols/Aws_query.ts index ce0f7cd9ddee..cd29b8e3e6ff 100644 --- a/clients/client-redshift/src/protocols/Aws_query.ts +++ b/clients/client-redshift/src/protocols/Aws_query.ts @@ -188,6 +188,10 @@ import { } from "../commands/DeleteSnapshotScheduleCommand"; import { DeleteTagsCommandInput, DeleteTagsCommandOutput } from "../commands/DeleteTagsCommand"; import { DeleteUsageLimitCommandInput, DeleteUsageLimitCommandOutput } from "../commands/DeleteUsageLimitCommand"; +import { + DeregisterNamespaceCommandInput, + DeregisterNamespaceCommandOutput, +} from "../commands/DeregisterNamespaceCommand"; import { DescribeAccountAttributesCommandInput, DescribeAccountAttributesCommandOutput, @@ -441,6 +445,7 @@ import { } from "../commands/PurchaseReservedNodeOfferingCommand"; import { PutResourcePolicyCommandInput, PutResourcePolicyCommandOutput } from "../commands/PutResourcePolicyCommand"; import { RebootClusterCommandInput, RebootClusterCommandOutput } from "../commands/RebootClusterCommand"; +import { RegisterNamespaceCommandInput, RegisterNamespaceCommandOutput } from "../commands/RegisterNamespaceCommand"; import { RejectDataShareCommandInput, RejectDataShareCommandOutput } from "../commands/RejectDataShareCommand"; import { ResetClusterParameterGroupCommandInput, @@ -621,11 +626,7 @@ import { DependentServiceAccessDeniedFault, DependentServiceRequestThrottlingFault, DependentServiceUnavailableFault, - DescribeAccountAttributesMessage, - DescribeAuthenticationProfilesMessage, - DescribeAuthenticationProfilesResult, - DescribeClusterDbRevisionsMessage, - DescribeClusterParameterGroupsMessage, + DeregisterNamespaceInputMessage, EC2SecurityGroup, ElasticIpStatus, Endpoint, @@ -689,6 +690,7 @@ import { LakeFormationQuery, LakeFormationScopeUnion, LimitExceededFault, + NamespaceIdentifierUnion, NetworkInterface, NumberOfNodesPerClusterLimitExceededFault, NumberOfNodesQuotaExceededFault, @@ -698,6 +700,7 @@ import { PartnerNotFoundFault, PauseClusterMessage, PendingModifiedValues, + ProvisionedIdentifier, ReadWriteAccess, RecurringCharge, RedshiftIdcApplication, @@ -727,6 +730,7 @@ import { ScheduledActionTypeUnsupportedFault, ScheduleDefinitionTypeUnsupportedFault, SecondaryClusterInfo, + ServerlessIdentifier, ServiceIntegrationsUnion, Snapshot, SnapshotCopyGrant, @@ -761,6 +765,12 @@ import { VpcSecurityGroupMembership, } from "../models/models_0"; import { + DeregisterNamespaceOutputMessage, + DescribeAccountAttributesMessage, + DescribeAuthenticationProfilesMessage, + DescribeAuthenticationProfilesResult, + DescribeClusterDbRevisionsMessage, + DescribeClusterParameterGroupsMessage, DescribeClusterParametersMessage, DescribeClusterSecurityGroupsMessage, DescribeClustersMessage, @@ -896,6 +906,8 @@ import { Recommendation, RecommendedAction, ReferenceLink, + RegisterNamespaceInputMessage, + RegisterNamespaceOutputMessage, RejectDataShareMessage, ReservedNodeConfigurationOption, ReservedNodeExchangeNotFoundFault, @@ -1794,6 +1806,23 @@ export const se_DeleteUsageLimitCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_queryDeregisterNamespaceCommand + */ +export const se_DeregisterNamespaceCommand = async ( + input: DeregisterNamespaceCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = SHARED_HEADERS; + let body: any; + body = buildFormUrlencodedString({ + ...se_DeregisterNamespaceInputMessage(input, context), + [_A]: _DN, + [_V]: _, + }); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_queryDescribeAccountAttributesCommand */ @@ -3084,6 +3113,23 @@ export const se_RebootClusterCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_queryRegisterNamespaceCommand + */ +export const se_RegisterNamespaceCommand = async ( + input: RegisterNamespaceCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = SHARED_HEADERS; + let body: any; + body = buildFormUrlencodedString({ + ...se_RegisterNamespaceInputMessage(input, context), + [_A]: _RN, + [_V]: _, + }); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_queryRejectDataShareCommand */ @@ -4226,6 +4272,26 @@ export const de_DeleteUsageLimitCommand = async ( return response; }; +/** + * deserializeAws_queryDeregisterNamespaceCommand + */ +export const de_DeregisterNamespaceCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): PromiseCreates a new cluster with the specified parameters.
\nTo create a cluster in Virtual Private Cloud (VPC), you must provide a cluster\n subnet group name. The cluster subnet group identifies the subnets of your VPC that\n Amazon Redshift uses when creating the cluster. \nFor more information about managing clusters, go to \nAmazon Redshift Clusters \nin the Amazon Redshift Cluster Management Guide.
" + "smithy.api#documentation": "Creates a new cluster with the specified parameters.
\nTo create a cluster in Virtual Private Cloud (VPC), you must provide a cluster\n subnet group name. The cluster subnet group identifies the subnets of your VPC that\n Amazon Redshift uses when creating the cluster. \nFor more information about managing clusters, go to \nAmazon Redshift Clusters \nin the Amazon Redshift Cluster Management Guide.
\nVPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that\n you own in a Region from reaching or being reached from the internet through internet\n gateways and egress-only internet gateways. If a subnet group for a\n provisioned cluster is in an account with VPC BPA turned on, the following capabilities\n are blocked:
\nCreating a public cluster
\nRestoring a public cluster
\nModifying a private cluster to be public
\nAdding a subnet with VPC BPA turned on to the subnet group when there's at\n least one public cluster within the group
\nFor more information about VPC BPA, see Block public access to VPCs and\n subnets in the Amazon VPC User Guide.
" } }, "com.amazonaws.redshift#CreateClusterMessage": { @@ -4529,6 +4541,12 @@ "traits": { "smithy.api#documentation": "The identifier of a datashare to show its managing entity.
" } + }, + "DataShareType": { + "target": "com.amazonaws.redshift#DataShareType", + "traits": { + "smithy.api#documentation": "The type of the datashare created by RegisterNamespace.
" + } } } }, @@ -4687,6 +4705,17 @@ } } }, + "com.amazonaws.redshift#DataShareType": { + "type": "enum", + "members": { + "INTERNAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTERNAL" + } + } + } + }, "com.amazonaws.redshift#DataTransferProgress": { "type": "structure", "members": { @@ -5736,6 +5765,67 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.redshift#DeregisterNamespace": { + "type": "operation", + "input": { + "target": "com.amazonaws.redshift#DeregisterNamespaceInputMessage" + }, + "output": { + "target": "com.amazonaws.redshift#DeregisterNamespaceOutputMessage" + }, + "errors": [ + { + "target": "com.amazonaws.redshift#ClusterNotFoundFault" + }, + { + "target": "com.amazonaws.redshift#InvalidClusterStateFault" + }, + { + "target": "com.amazonaws.redshift#InvalidNamespaceFault" + } + ], + "traits": { + "smithy.api#documentation": "Deregisters a cluster or serverless namespace from the Amazon Web Services Glue Data Catalog.
" + } + }, + "com.amazonaws.redshift#DeregisterNamespaceInputMessage": { + "type": "structure", + "members": { + "NamespaceIdentifier": { + "target": "com.amazonaws.redshift#NamespaceIdentifierUnion", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "The unique identifier of the cluster or \n serverless namespace that you want to deregister.
", + "smithy.api#required": {} + } + }, + "ConsumerIdentifiers": { + "target": "com.amazonaws.redshift#ConsumerIdentifierList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "An array containing the ID of the consumer account \n that you want to deregister the cluster or serverless namespace from.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.redshift#DeregisterNamespaceOutputMessage": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.redshift#NamespaceRegistrationStatus", + "traits": { + "smithy.api#documentation": "The registration status of the cluster or \n serverless namespace.
" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.redshift#DescribeAccountAttributes": { "type": "operation", "input": { @@ -11753,7 +11843,7 @@ } ], "traits": { - "smithy.api#documentation": "Modifies the settings for a cluster.
\nYou can also change node type and the number of nodes to scale up or down the\n cluster. When resizing a cluster, you must specify both the number of nodes and the node\n type even if one of the parameters does not change.
\nYou can add another security or\n parameter group, or change the admin user password. Resetting a cluster password or modifying the security groups associated with a cluster do not need a reboot. However, modifying a parameter group requires a reboot for parameters to take effect. \nFor more information about managing clusters, go to \nAmazon Redshift Clusters \nin the Amazon Redshift Cluster Management Guide.
" + "smithy.api#documentation": "Modifies the settings for a cluster.
\nYou can also change node type and the number of nodes to scale up or down the\n cluster. When resizing a cluster, you must specify both the number of nodes and the node\n type even if one of the parameters does not change.
\nYou can add another security or\n parameter group, or change the admin user password. Resetting a cluster password or modifying the security groups associated with a cluster do not need a reboot. However, modifying a parameter group requires a reboot for parameters to take effect. \nFor more information about managing clusters, go to \nAmazon Redshift Clusters \nin the Amazon Redshift Cluster Management Guide.
\nVPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that\n you own in a Region from reaching or being reached from the internet through internet\n gateways and egress-only internet gateways. If a subnet group for a\n provisioned cluster is in an account with VPC BPA turned on, the following capabilities\n are blocked:
\nCreating a public cluster
\nRestoring a public cluster
\nModifying a private cluster to be public
\nAdding a subnet with VPC BPA turned on to the subnet group when there's at\n least one public cluster within the group
\nFor more information about VPC BPA, see Block public access to VPCs and\n subnets in the Amazon VPC User Guide.
" } }, "com.amazonaws.redshift#ModifyClusterDbRevision": { @@ -12343,7 +12433,7 @@ } ], "traits": { - "smithy.api#documentation": "Modifies a cluster subnet group to include the specified list of VPC subnets. The\n operation replaces the existing list of subnets with the new list of subnets.
" + "smithy.api#documentation": "Modifies a cluster subnet group to include the specified list of VPC subnets. The\n operation replaces the existing list of subnets with the new list of subnets.
\nVPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that\n you own in a Region from reaching or being reached from the internet through internet\n gateways and egress-only internet gateways. If a subnet group for a\n provisioned cluster is in an account with VPC BPA turned on, the following capabilities\n are blocked:
\nCreating a public cluster
\nRestoring a public cluster
\nModifying a private cluster to be public
\nAdding a subnet with VPC BPA turned on to the subnet group when there's at\n least one public cluster within the group
\nFor more information about VPC BPA, see Block public access to VPCs and\n subnets in the Amazon VPC User Guide.
" } }, "com.amazonaws.redshift#ModifyClusterSubnetGroupMessage": { @@ -13039,6 +13129,43 @@ "smithy.api#input": {} } }, + "com.amazonaws.redshift#NamespaceIdentifierUnion": { + "type": "union", + "members": { + "ServerlessIdentifier": { + "target": "com.amazonaws.redshift#ServerlessIdentifier", + "traits": { + "smithy.api#documentation": "The identifier for a serverless namespace.
" + } + }, + "ProvisionedIdentifier": { + "target": "com.amazonaws.redshift#ProvisionedIdentifier", + "traits": { + "smithy.api#documentation": "The identifier for a provisioned cluster.
" + } + } + }, + "traits": { + "smithy.api#documentation": "Object to store union of values for a \n provisioned cluster or serverless namespace’s identifier.
" + } + }, + "com.amazonaws.redshift#NamespaceRegistrationStatus": { + "type": "enum", + "members": { + "REGISTERING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Registering" + } + }, + "DEREGISTERING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Deregistering" + } + } + } + }, "com.amazonaws.redshift#NetworkInterface": { "type": "structure", "members": { @@ -13785,6 +13912,22 @@ "smithy.api#documentation": "Describes cluster attributes that are in a pending state. A change to one or more\n the attributes was requested and is in progress or will be applied.
" } }, + "com.amazonaws.redshift#ProvisionedIdentifier": { + "type": "structure", + "members": { + "ClusterIdentifier": { + "target": "com.amazonaws.redshift#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "The unique identifier for the provisioned cluster.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "The identifier for a provisioned cluster.
" + } + }, "com.amazonaws.redshift#PurchaseReservedNodeOffering": { "type": "operation", "input": { @@ -14438,6 +14581,9 @@ { "target": "com.amazonaws.redshift#DeleteUsageLimit" }, + { + "target": "com.amazonaws.redshift#DeregisterNamespace" + }, { "target": "com.amazonaws.redshift#DescribeAccountAttributes" }, @@ -14666,6 +14812,9 @@ { "target": "com.amazonaws.redshift#RebootCluster" }, + { + "target": "com.amazonaws.redshift#RegisterNamespace" + }, { "target": "com.amazonaws.redshift#RejectDataShare" }, @@ -15778,6 +15927,67 @@ } } }, + "com.amazonaws.redshift#RegisterNamespace": { + "type": "operation", + "input": { + "target": "com.amazonaws.redshift#RegisterNamespaceInputMessage" + }, + "output": { + "target": "com.amazonaws.redshift#RegisterNamespaceOutputMessage" + }, + "errors": [ + { + "target": "com.amazonaws.redshift#ClusterNotFoundFault" + }, + { + "target": "com.amazonaws.redshift#InvalidClusterStateFault" + }, + { + "target": "com.amazonaws.redshift#InvalidNamespaceFault" + } + ], + "traits": { + "smithy.api#documentation": "Registers a cluster or serverless namespace to the Amazon Web Services Glue Data Catalog.
" + } + }, + "com.amazonaws.redshift#RegisterNamespaceInputMessage": { + "type": "structure", + "members": { + "NamespaceIdentifier": { + "target": "com.amazonaws.redshift#NamespaceIdentifierUnion", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "The unique identifier of the cluster or \n serverless namespace that you want to register.
", + "smithy.api#required": {} + } + }, + "ConsumerIdentifiers": { + "target": "com.amazonaws.redshift#ConsumerIdentifierList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "An array containing the ID of the consumer account \n that you want to register the namespace to.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.redshift#RegisterNamespaceOutputMessage": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.redshift#NamespaceRegistrationStatus", + "traits": { + "smithy.api#documentation": "The registration status of the cluster or \n serverless namespace.
" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.redshift#RejectDataShare": { "type": "operation", "input": { @@ -16764,7 +16974,7 @@ } ], "traits": { - "smithy.api#documentation": "Creates a new cluster from a snapshot. By default, Amazon Redshift creates the resulting\n cluster with the same configuration as the original cluster from which the snapshot was\n created, except that the new cluster is created with the default cluster security and\n parameter groups. After Amazon Redshift creates the cluster, you can use the ModifyCluster API to associate a different security group and different\n parameter group with the restored cluster. If you are using a DS node type, you can also\n choose to change to another DS node type of the same size during restore.
\nIf you restore a cluster into a VPC, you must provide a cluster subnet group where\n you want the cluster restored.
\n\nFor more information about working with snapshots, go to \nAmazon Redshift Snapshots \nin the Amazon Redshift Cluster Management Guide.
" + "smithy.api#documentation": "Creates a new cluster from a snapshot. By default, Amazon Redshift creates the resulting\n cluster with the same configuration as the original cluster from which the snapshot was\n created, except that the new cluster is created with the default cluster security and\n parameter groups. After Amazon Redshift creates the cluster, you can use the ModifyCluster API to associate a different security group and different\n parameter group with the restored cluster. If you are using a DS node type, you can also\n choose to change to another DS node type of the same size during restore.
\nIf you restore a cluster into a VPC, you must provide a cluster subnet group where\n you want the cluster restored.
\nVPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that\n you own in a Region from reaching or being reached from the internet through internet\n gateways and egress-only internet gateways. If a subnet group for a\n provisioned cluster is in an account with VPC BPA turned on, the following capabilities\n are blocked:
\nCreating a public cluster
\nRestoring a public cluster
\nModifying a private cluster to be public
\nAdding a subnet with VPC BPA turned on to the subnet group when there's at\n least one public cluster within the group
\nFor more information about VPC BPA, see Block public access to VPCs and\n subnets in the Amazon VPC User Guide.
\n\nFor more information about working with snapshots, go to \nAmazon Redshift Snapshots \nin the Amazon Redshift Cluster Management Guide.
" } }, "com.amazonaws.redshift#RestoreFromClusterSnapshotMessage": { @@ -17973,6 +18183,30 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.redshift#ServerlessIdentifier": { + "type": "structure", + "members": { + "NamespaceIdentifier": { + "target": "com.amazonaws.redshift#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "The unique identifier for the serverless namespace.
", + "smithy.api#required": {} + } + }, + "WorkgroupIdentifier": { + "target": "com.amazonaws.redshift#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "The unique identifier for the workgroup \n associated with the serverless namespace.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "The identifier for a serverless namespace.
" + } + }, "com.amazonaws.redshift#ServiceAuthorization": { "type": "enum", "members": {