/** * Object Storage Service API * Use Object Storage and Archive Storage APIs to manage buckets, objects, and related resources. For more information, see [Overview of Object Storage](https://docs.oracle.com/iaas/Content/Object/Concepts/objectstorageoverview.htm) and [Overview of Archive Storage](https://docs.oracle.com/iaas/Content/Archive/Concepts/archivestorageoverview.htm). * OpenAPI spec version: 20160918 * Contact: opc_casper_users_us_grp@oracle.com * * NOTE: This class is auto generated by OracleSDKGenerator. * Do not edit the class manually. * * Copyright (c) 2020, 2026, Oracle and/or its affiliates. All rights reserved. * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. */ /** * To use any of the API operations, you must be authorized in an IAM policy. If you are not authorized, * talk to an administrator. If you are an administrator who needs to write policies to give users access, see * [Getting Started with Policies](https://docs.oracle.com/iaas/Content/Identity/Concepts/policygetstarted.htm). * */ export interface UpdateBucketDetails { /** * The Object Storage namespace in which the bucket lives. */ "namespace"?: string; /** * The compartmentId for the compartment to move the bucket to. */ "compartmentId"?: string; /** * The name of the bucket. Valid characters are uppercase or lowercase letters, numbers, hyphens, underscores, and periods. * Bucket names must be unique within an Object Storage namespace. Avoid entering confidential information. * Example: my-new-bucket1 * */ "name"?: string; /** * Arbitrary string, up to 4KB, of keys and values for user-defined metadata. */ "metadata"?: { [key: string]: string; }; /** * The type of public access enabled on this bucket. A bucket is set to {@code NoPublicAccess} by default, which only allows an * authenticated caller to access the bucket and its contents. When {@code ObjectRead} is enabled on the bucket, public access * is allowed for the {@code GetObject}, {@code HeadObject}, and {@code ListObjects} operations. When {@code ObjectReadWithoutList} is enabled * on the bucket, public access is allowed for the {@code GetObject} and {@code HeadObject} operations. * */ "publicAccessType"?: UpdateBucketDetails.PublicAccessType; /** * Whether or not events are emitted for object state changes in this bucket. By default, {@code objectEventsEnabled} is * set to {@code false}. Set {@code objectEventsEnabled} to {@code true} to emit events for object state changes. For more information * about events, see [Overview of Events](https://docs.oracle.com/iaas/Content/Events/Concepts/eventsoverview.htm). * */ "objectEventsEnabled"?: boolean; /** * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. * For more information, see [Resource Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). * Example: {@code {\"Department\": \"Finance\"}} * */ "freeformTags"?: { [key: string]: string; }; /** * Defined tags for this resource. Each key is predefined and scoped to a namespace. * For more information, see [Resource Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). * Example: {\"Operations\": {\"CostCenter\": \"42\"}} * */ "definedTags"?: { [key: string]: { [key: string]: any; }; }; /** * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Key Management master encryption key to associate * with the specified bucket. If this value is empty, the Update operation will remove the associated key, if * there is one, from the bucket. (The bucket will continue to be encrypted, but with an encryption key managed * by Oracle.) * */ "kmsKeyId"?: string; /** * The versioning status on the bucket. If in state {@code Enabled}, multiple versions of the same object can be kept in the bucket. * When the object is overwritten or deleted, previous versions will still be available. When versioning is {@code Suspended}, the previous versions will still remain but new versions will no longer be created when overwitten or deleted. * Versioning cannot be disabled on a bucket once enabled. * */ "versioning"?: UpdateBucketDetails.Versioning; /** * The auto tiering status on the bucket. If in state {@code InfrequentAccess}, objects are transitioned * automatically between the 'Standard' and 'InfrequentAccess' tiers based on the access pattern of the objects. * When auto tiering is {@code Disabled}, there will be no automatic transitions between storage tiers. * */ "autoTiering"?: string; /** * Scope in which the bucket is unique. Default value is NAMESPACE. * Bucket scope as NAMESPACE means that the bucket is unique only in the owning namespace/tenancy. Other * tenancies can have a bucket with same name in their namespace. * Bucket scope as REGION means that the bucket is regionally unique. No other tenancy can have a bucket with * same name and scope REGION. * BucketScope can only be updated from NAMESPACE to REGION, it cannot be updated from REGION to NAMESPACE. * Updating bucket scope is possible only if the bucket name is valid and there is no existing regionally unique * bucket with the same name. * */ "bucketScope"?: string; } export declare namespace UpdateBucketDetails { enum PublicAccessType { NoPublicAccess = "NoPublicAccess", ObjectRead = "ObjectRead", ObjectReadWithoutList = "ObjectReadWithoutList" } enum Versioning { Enabled = "Enabled", Suspended = "Suspended" } function getJsonObj(obj: UpdateBucketDetails): object; function getDeserializedJsonObj(obj: UpdateBucketDetails): object; }