// Code generated by smithy-go-codegen DO NOT EDIT. package backup import ( "context" awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" "github.com/aws/aws-sdk-go-v2/aws/signer/v4" "github.com/aws/smithy-go/middleware" smithyhttp "github.com/aws/smithy-go/transport/http" "time" ) // Creates a logical container where backups are stored. A CreateBackupVault // request includes a name, optionally one or more resource tags, an encryption // key, and a request ID. Do not include sensitive data, such as passport numbers, // in the name of a backup vault. func (c *Client) CreateBackupVault(ctx context.Context, params *CreateBackupVaultInput, optFns ...func(*Options)) (*CreateBackupVaultOutput, error) { if params == nil { params = &CreateBackupVaultInput{} } result, metadata, err := c.invokeOperation(ctx, "CreateBackupVault", params, optFns, c.addOperationCreateBackupVaultMiddlewares) if err != nil { return nil, err } out := result.(*CreateBackupVaultOutput) out.ResultMetadata = metadata return out, nil } type CreateBackupVaultInput struct { // The name of a logical container where backups are stored. Backup vaults are // identified by names that are unique to the account used to create them and the // Amazon Web Services Region where they are created. They consist of letters, // numbers, and hyphens. // // This member is required. BackupVaultName *string // Metadata that you can assign to help organize the resources that you create. // Each tag is a key-value pair. BackupVaultTags map[string]string // A unique string that identifies the request and allows failed requests to be // retried without the risk of running the operation twice. This parameter is // optional. If used, this parameter must contain 1 to 50 alphanumeric or '-_.' // characters. CreatorRequestId *string // The server-side encryption key that is used to protect your backups; for // example, // arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab . EncryptionKeyArn *string noSmithyDocumentSerde } type CreateBackupVaultOutput struct { // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault . BackupVaultArn *string // The name of a logical container where backups are stored. Backup vaults are // identified by names that are unique to the account used to create them and the // Region where they are created. They consist of lowercase letters, numbers, and // hyphens. BackupVaultName *string // The date and time a backup vault is created, in Unix format and Coordinated // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. // For example, the value 1516925490.087 represents Friday, January 26, 2018 // 12:11:30.087 AM. CreationDate *time.Time // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata noSmithyDocumentSerde } func (c *Client) addOperationCreateBackupVaultMiddlewares(stack *middleware.Stack, options Options) (err error) { err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateBackupVault{}, middleware.After) if err != nil { return err } err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateBackupVault{}, middleware.After) if err != nil { return err } if err = addSetLoggerMiddleware(stack, options); err != nil { return err } if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { return err } if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { return err } if err = addResolveEndpointMiddleware(stack, options); err != nil { return err } if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { return err } if err = addRetryMiddlewares(stack, options); err != nil { return err } if err = addHTTPSignerV4Middleware(stack, options); err != nil { return err } if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { return err } if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { return err } if err = addClientUserAgent(stack, options); err != nil { return err } if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { return err } if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { return err } if err = addOpCreateBackupVaultValidationMiddleware(stack); err != nil { return err } if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateBackupVault(options.Region), middleware.Before); err != nil { return err } if err = awsmiddleware.AddRecursionDetection(stack); err != nil { return err } if err = addRequestIDRetrieverMiddleware(stack); err != nil { return err } if err = addResponseErrorMiddleware(stack); err != nil { return err } if err = addRequestResponseLogging(stack, options); err != nil { return err } return nil } func newServiceMetadataMiddleware_opCreateBackupVault(region string) *awsmiddleware.RegisterServiceMetadata { return &awsmiddleware.RegisterServiceMetadata{ Region: region, ServiceID: ServiceID, SigningName: "backup", OperationName: "CreateBackupVault", } }