1. Packages
  2. Google Cloud Native
  3. API Docs
  4. storage
  5. storage/v1
  6. Bucket

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.storage/v1.Bucket

Explore with Pulumi AI

google-native logo

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

    Creates a new bucket.

    Create Bucket Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Bucket(name: string, args?: BucketArgs, opts?: CustomResourceOptions);
    @overload
    def Bucket(resource_name: str,
               args: Optional[BucketArgs] = None,
               opts: Optional[ResourceOptions] = None)
    
    @overload
    def Bucket(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               acl: Optional[Sequence[BucketAccessControlArgs]] = None,
               autoclass: Optional[BucketAutoclassArgs] = None,
               billing: Optional[BucketBillingArgs] = None,
               cors: Optional[Sequence[BucketCorsItemArgs]] = None,
               custom_placement_config: Optional[BucketCustomPlacementConfigArgs] = None,
               default_event_based_hold: Optional[bool] = None,
               default_object_acl: Optional[Sequence[ObjectAccessControlArgs]] = None,
               enable_object_retention: Optional[bool] = None,
               encryption: Optional[BucketEncryptionArgs] = None,
               etag: Optional[str] = None,
               iam_configuration: Optional[BucketIamConfigurationArgs] = None,
               id: Optional[str] = None,
               kind: Optional[str] = None,
               labels: Optional[Mapping[str, str]] = None,
               lifecycle: Optional[BucketLifecycleArgs] = None,
               location: Optional[str] = None,
               location_type: Optional[str] = None,
               logging: Optional[BucketLoggingArgs] = None,
               metageneration: Optional[str] = None,
               name: Optional[str] = None,
               object_retention: Optional[BucketObjectRetentionArgs] = None,
               owner: Optional[BucketOwnerArgs] = None,
               predefined_acl: Optional[str] = None,
               predefined_default_object_acl: Optional[str] = None,
               project: Optional[str] = None,
               project_number: Optional[str] = None,
               projection: Optional[str] = None,
               retention_policy: Optional[BucketRetentionPolicyArgs] = None,
               rpo: Optional[str] = None,
               satisfies_pzs: Optional[bool] = None,
               self_link: Optional[str] = None,
               soft_delete_policy: Optional[BucketSoftDeletePolicyArgs] = None,
               storage_class: Optional[str] = None,
               time_created: Optional[str] = None,
               updated: Optional[str] = None,
               user_project: Optional[str] = None,
               versioning: Optional[BucketVersioningArgs] = None,
               website: Optional[BucketWebsiteArgs] = None)
    func NewBucket(ctx *Context, name string, args *BucketArgs, opts ...ResourceOption) (*Bucket, error)
    public Bucket(string name, BucketArgs? args = null, CustomResourceOptions? opts = null)
    public Bucket(String name, BucketArgs args)
    public Bucket(String name, BucketArgs args, CustomResourceOptions options)
    
    type: google-native:storage/v1:Bucket
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args BucketArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args BucketArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args BucketArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args BucketArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args BucketArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var google_nativeBucketResource = new GoogleNative.Storage.V1.Bucket("google-nativeBucketResource", new()
    {
        Acl = new[]
        {
            new GoogleNative.Storage.V1.Inputs.BucketAccessControlArgs
            {
                Bucket = "string",
                Domain = "string",
                Email = "string",
                Entity = "string",
                EntityId = "string",
                Etag = "string",
                Id = "string",
                Kind = "string",
                ProjectTeam = new GoogleNative.Storage.V1.Inputs.BucketAccessControlProjectTeamArgs
                {
                    ProjectNumber = "string",
                    Team = "string",
                },
                Role = "string",
                SelfLink = "string",
            },
        },
        Autoclass = new GoogleNative.Storage.V1.Inputs.BucketAutoclassArgs
        {
            Enabled = false,
            TerminalStorageClass = "string",
            TerminalStorageClassUpdateTime = "string",
            ToggleTime = "string",
        },
        Billing = new GoogleNative.Storage.V1.Inputs.BucketBillingArgs
        {
            RequesterPays = false,
        },
        Cors = new[]
        {
            new GoogleNative.Storage.V1.Inputs.BucketCorsItemArgs
            {
                MaxAgeSeconds = 0,
                Method = new[]
                {
                    "string",
                },
                Origin = new[]
                {
                    "string",
                },
                ResponseHeader = new[]
                {
                    "string",
                },
            },
        },
        CustomPlacementConfig = new GoogleNative.Storage.V1.Inputs.BucketCustomPlacementConfigArgs
        {
            DataLocations = new[]
            {
                "string",
            },
        },
        DefaultEventBasedHold = false,
        DefaultObjectAcl = new[]
        {
            new GoogleNative.Storage.V1.Inputs.ObjectAccessControlArgs
            {
                Bucket = "string",
                Domain = "string",
                Email = "string",
                Entity = "string",
                EntityId = "string",
                Etag = "string",
                Generation = "string",
                Id = "string",
                Kind = "string",
                Object = "string",
                ProjectTeam = new GoogleNative.Storage.V1.Inputs.ObjectAccessControlProjectTeamArgs
                {
                    ProjectNumber = "string",
                    Team = "string",
                },
                Role = "string",
                SelfLink = "string",
            },
        },
        EnableObjectRetention = false,
        Encryption = new GoogleNative.Storage.V1.Inputs.BucketEncryptionArgs
        {
            DefaultKmsKeyName = "string",
        },
        Etag = "string",
        IamConfiguration = new GoogleNative.Storage.V1.Inputs.BucketIamConfigurationArgs
        {
            BucketPolicyOnly = new GoogleNative.Storage.V1.Inputs.BucketIamConfigurationBucketPolicyOnlyArgs
            {
                Enabled = false,
                LockedTime = "string",
            },
            PublicAccessPrevention = "string",
            UniformBucketLevelAccess = new GoogleNative.Storage.V1.Inputs.BucketIamConfigurationUniformBucketLevelAccessArgs
            {
                Enabled = false,
                LockedTime = "string",
            },
        },
        Id = "string",
        Kind = "string",
        Labels = 
        {
            { "string", "string" },
        },
        Lifecycle = new GoogleNative.Storage.V1.Inputs.BucketLifecycleArgs
        {
            Rule = new[]
            {
                new GoogleNative.Storage.V1.Inputs.BucketLifecycleRuleItemArgs
                {
                    Action = new GoogleNative.Storage.V1.Inputs.BucketLifecycleRuleItemActionArgs
                    {
                        StorageClass = "string",
                        Type = "string",
                    },
                    Condition = new GoogleNative.Storage.V1.Inputs.BucketLifecycleRuleItemConditionArgs
                    {
                        Age = 0,
                        CreatedBefore = "string",
                        CustomTimeBefore = "string",
                        DaysSinceCustomTime = 0,
                        DaysSinceNoncurrentTime = 0,
                        IsLive = false,
                        MatchesPattern = "string",
                        MatchesPrefix = new[]
                        {
                            "string",
                        },
                        MatchesStorageClass = new[]
                        {
                            "string",
                        },
                        MatchesSuffix = new[]
                        {
                            "string",
                        },
                        NoncurrentTimeBefore = "string",
                        NumNewerVersions = 0,
                    },
                },
            },
        },
        Location = "string",
        LocationType = "string",
        Logging = new GoogleNative.Storage.V1.Inputs.BucketLoggingArgs
        {
            LogBucket = "string",
            LogObjectPrefix = "string",
        },
        Metageneration = "string",
        Name = "string",
        ObjectRetention = new GoogleNative.Storage.V1.Inputs.BucketObjectRetentionArgs
        {
            Mode = "string",
            RetainUntilTime = "string",
        },
        Owner = new GoogleNative.Storage.V1.Inputs.BucketOwnerArgs
        {
            Entity = "string",
            EntityId = "string",
        },
        PredefinedAcl = "string",
        PredefinedDefaultObjectAcl = "string",
        Project = "string",
        ProjectNumber = "string",
        Projection = "string",
        RetentionPolicy = new GoogleNative.Storage.V1.Inputs.BucketRetentionPolicyArgs
        {
            EffectiveTime = "string",
            IsLocked = false,
            RetentionPeriod = "string",
        },
        Rpo = "string",
        SatisfiesPZS = false,
        SelfLink = "string",
        SoftDeletePolicy = new GoogleNative.Storage.V1.Inputs.BucketSoftDeletePolicyArgs
        {
            EffectiveTime = "string",
            RetentionDurationSeconds = "string",
        },
        StorageClass = "string",
        TimeCreated = "string",
        Updated = "string",
        UserProject = "string",
        Versioning = new GoogleNative.Storage.V1.Inputs.BucketVersioningArgs
        {
            Enabled = false,
        },
        Website = new GoogleNative.Storage.V1.Inputs.BucketWebsiteArgs
        {
            MainPageSuffix = "string",
            NotFoundPage = "string",
        },
    });
    
    example, err := storage.NewBucket(ctx, "google-nativeBucketResource", &storage.BucketArgs{
    	Acl: storage.BucketAccessControlTypeArray{
    		&storage.BucketAccessControlTypeArgs{
    			Bucket:   pulumi.String("string"),
    			Domain:   pulumi.String("string"),
    			Email:    pulumi.String("string"),
    			Entity:   pulumi.String("string"),
    			EntityId: pulumi.String("string"),
    			Etag:     pulumi.String("string"),
    			Id:       pulumi.String("string"),
    			Kind:     pulumi.String("string"),
    			ProjectTeam: &storage.BucketAccessControlProjectTeamArgs{
    				ProjectNumber: pulumi.String("string"),
    				Team:          pulumi.String("string"),
    			},
    			Role:     pulumi.String("string"),
    			SelfLink: pulumi.String("string"),
    		},
    	},
    	Autoclass: &storage.BucketAutoclassArgs{
    		Enabled:                        pulumi.Bool(false),
    		TerminalStorageClass:           pulumi.String("string"),
    		TerminalStorageClassUpdateTime: pulumi.String("string"),
    		ToggleTime:                     pulumi.String("string"),
    	},
    	Billing: &storage.BucketBillingArgs{
    		RequesterPays: pulumi.Bool(false),
    	},
    	Cors: storage.BucketCorsItemArray{
    		&storage.BucketCorsItemArgs{
    			MaxAgeSeconds: pulumi.Int(0),
    			Method: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Origin: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			ResponseHeader: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    	CustomPlacementConfig: &storage.BucketCustomPlacementConfigArgs{
    		DataLocations: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	DefaultEventBasedHold: pulumi.Bool(false),
    	DefaultObjectAcl: storage.ObjectAccessControlTypeArray{
    		&storage.ObjectAccessControlTypeArgs{
    			Bucket:     pulumi.String("string"),
    			Domain:     pulumi.String("string"),
    			Email:      pulumi.String("string"),
    			Entity:     pulumi.String("string"),
    			EntityId:   pulumi.String("string"),
    			Etag:       pulumi.String("string"),
    			Generation: pulumi.String("string"),
    			Id:         pulumi.String("string"),
    			Kind:       pulumi.String("string"),
    			Object:     pulumi.String("string"),
    			ProjectTeam: &storage.ObjectAccessControlProjectTeamArgs{
    				ProjectNumber: pulumi.String("string"),
    				Team:          pulumi.String("string"),
    			},
    			Role:     pulumi.String("string"),
    			SelfLink: pulumi.String("string"),
    		},
    	},
    	EnableObjectRetention: pulumi.Bool(false),
    	Encryption: &storage.BucketEncryptionArgs{
    		DefaultKmsKeyName: pulumi.String("string"),
    	},
    	Etag: pulumi.String("string"),
    	IamConfiguration: &storage.BucketIamConfigurationArgs{
    		BucketPolicyOnly: &storage.BucketIamConfigurationBucketPolicyOnlyArgs{
    			Enabled:    pulumi.Bool(false),
    			LockedTime: pulumi.String("string"),
    		},
    		PublicAccessPrevention: pulumi.String("string"),
    		UniformBucketLevelAccess: &storage.BucketIamConfigurationUniformBucketLevelAccessArgs{
    			Enabled:    pulumi.Bool(false),
    			LockedTime: pulumi.String("string"),
    		},
    	},
    	Id:   pulumi.String("string"),
    	Kind: pulumi.String("string"),
    	Labels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Lifecycle: &storage.BucketLifecycleArgs{
    		Rule: storage.BucketLifecycleRuleItemArray{
    			&storage.BucketLifecycleRuleItemArgs{
    				Action: &storage.BucketLifecycleRuleItemActionArgs{
    					StorageClass: pulumi.String("string"),
    					Type:         pulumi.String("string"),
    				},
    				Condition: &storage.BucketLifecycleRuleItemConditionArgs{
    					Age:                     pulumi.Int(0),
    					CreatedBefore:           pulumi.String("string"),
    					CustomTimeBefore:        pulumi.String("string"),
    					DaysSinceCustomTime:     pulumi.Int(0),
    					DaysSinceNoncurrentTime: pulumi.Int(0),
    					IsLive:                  pulumi.Bool(false),
    					MatchesPattern:          pulumi.String("string"),
    					MatchesPrefix: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					MatchesStorageClass: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					MatchesSuffix: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					NoncurrentTimeBefore: pulumi.String("string"),
    					NumNewerVersions:     pulumi.Int(0),
    				},
    			},
    		},
    	},
    	Location:     pulumi.String("string"),
    	LocationType: pulumi.String("string"),
    	Logging: &storage.BucketLoggingArgs{
    		LogBucket:       pulumi.String("string"),
    		LogObjectPrefix: pulumi.String("string"),
    	},
    	Metageneration: pulumi.String("string"),
    	Name:           pulumi.String("string"),
    	ObjectRetention: &storage.BucketObjectRetentionArgs{
    		Mode:            pulumi.String("string"),
    		RetainUntilTime: pulumi.String("string"),
    	},
    	Owner: &storage.BucketOwnerArgs{
    		Entity:   pulumi.String("string"),
    		EntityId: pulumi.String("string"),
    	},
    	PredefinedAcl:              pulumi.String("string"),
    	PredefinedDefaultObjectAcl: pulumi.String("string"),
    	Project:                    pulumi.String("string"),
    	ProjectNumber:              pulumi.String("string"),
    	Projection:                 pulumi.String("string"),
    	RetentionPolicy: &storage.BucketRetentionPolicyArgs{
    		EffectiveTime:   pulumi.String("string"),
    		IsLocked:        pulumi.Bool(false),
    		RetentionPeriod: pulumi.String("string"),
    	},
    	Rpo:          pulumi.String("string"),
    	SatisfiesPZS: pulumi.Bool(false),
    	SelfLink:     pulumi.String("string"),
    	SoftDeletePolicy: &storage.BucketSoftDeletePolicyArgs{
    		EffectiveTime:            pulumi.String("string"),
    		RetentionDurationSeconds: pulumi.String("string"),
    	},
    	StorageClass: pulumi.String("string"),
    	TimeCreated:  pulumi.String("string"),
    	Updated:      pulumi.String("string"),
    	UserProject:  pulumi.String("string"),
    	Versioning: &storage.BucketVersioningArgs{
    		Enabled: pulumi.Bool(false),
    	},
    	Website: &storage.BucketWebsiteArgs{
    		MainPageSuffix: pulumi.String("string"),
    		NotFoundPage:   pulumi.String("string"),
    	},
    })
    
    var google_nativeBucketResource = new Bucket("google-nativeBucketResource", BucketArgs.builder()
        .acl(BucketAccessControlArgs.builder()
            .bucket("string")
            .domain("string")
            .email("string")
            .entity("string")
            .entityId("string")
            .etag("string")
            .id("string")
            .kind("string")
            .projectTeam(BucketAccessControlProjectTeamArgs.builder()
                .projectNumber("string")
                .team("string")
                .build())
            .role("string")
            .selfLink("string")
            .build())
        .autoclass(BucketAutoclassArgs.builder()
            .enabled(false)
            .terminalStorageClass("string")
            .terminalStorageClassUpdateTime("string")
            .toggleTime("string")
            .build())
        .billing(BucketBillingArgs.builder()
            .requesterPays(false)
            .build())
        .cors(BucketCorsItemArgs.builder()
            .maxAgeSeconds(0)
            .method("string")
            .origin("string")
            .responseHeader("string")
            .build())
        .customPlacementConfig(BucketCustomPlacementConfigArgs.builder()
            .dataLocations("string")
            .build())
        .defaultEventBasedHold(false)
        .defaultObjectAcl(ObjectAccessControlArgs.builder()
            .bucket("string")
            .domain("string")
            .email("string")
            .entity("string")
            .entityId("string")
            .etag("string")
            .generation("string")
            .id("string")
            .kind("string")
            .object("string")
            .projectTeam(ObjectAccessControlProjectTeamArgs.builder()
                .projectNumber("string")
                .team("string")
                .build())
            .role("string")
            .selfLink("string")
            .build())
        .enableObjectRetention(false)
        .encryption(BucketEncryptionArgs.builder()
            .defaultKmsKeyName("string")
            .build())
        .etag("string")
        .iamConfiguration(BucketIamConfigurationArgs.builder()
            .bucketPolicyOnly(BucketIamConfigurationBucketPolicyOnlyArgs.builder()
                .enabled(false)
                .lockedTime("string")
                .build())
            .publicAccessPrevention("string")
            .uniformBucketLevelAccess(BucketIamConfigurationUniformBucketLevelAccessArgs.builder()
                .enabled(false)
                .lockedTime("string")
                .build())
            .build())
        .id("string")
        .kind("string")
        .labels(Map.of("string", "string"))
        .lifecycle(BucketLifecycleArgs.builder()
            .rule(BucketLifecycleRuleItemArgs.builder()
                .action(BucketLifecycleRuleItemActionArgs.builder()
                    .storageClass("string")
                    .type("string")
                    .build())
                .condition(BucketLifecycleRuleItemConditionArgs.builder()
                    .age(0)
                    .createdBefore("string")
                    .customTimeBefore("string")
                    .daysSinceCustomTime(0)
                    .daysSinceNoncurrentTime(0)
                    .isLive(false)
                    .matchesPattern("string")
                    .matchesPrefix("string")
                    .matchesStorageClass("string")
                    .matchesSuffix("string")
                    .noncurrentTimeBefore("string")
                    .numNewerVersions(0)
                    .build())
                .build())
            .build())
        .location("string")
        .locationType("string")
        .logging(BucketLoggingArgs.builder()
            .logBucket("string")
            .logObjectPrefix("string")
            .build())
        .metageneration("string")
        .name("string")
        .objectRetention(BucketObjectRetentionArgs.builder()
            .mode("string")
            .retainUntilTime("string")
            .build())
        .owner(BucketOwnerArgs.builder()
            .entity("string")
            .entityId("string")
            .build())
        .predefinedAcl("string")
        .predefinedDefaultObjectAcl("string")
        .project("string")
        .projectNumber("string")
        .projection("string")
        .retentionPolicy(BucketRetentionPolicyArgs.builder()
            .effectiveTime("string")
            .isLocked(false)
            .retentionPeriod("string")
            .build())
        .rpo("string")
        .satisfiesPZS(false)
        .selfLink("string")
        .softDeletePolicy(BucketSoftDeletePolicyArgs.builder()
            .effectiveTime("string")
            .retentionDurationSeconds("string")
            .build())
        .storageClass("string")
        .timeCreated("string")
        .updated("string")
        .userProject("string")
        .versioning(BucketVersioningArgs.builder()
            .enabled(false)
            .build())
        .website(BucketWebsiteArgs.builder()
            .mainPageSuffix("string")
            .notFoundPage("string")
            .build())
        .build());
    
    google_native_bucket_resource = google_native.storage.v1.Bucket("google-nativeBucketResource",
        acl=[google_native.storage.v1.BucketAccessControlArgs(
            bucket="string",
            domain="string",
            email="string",
            entity="string",
            entity_id="string",
            etag="string",
            id="string",
            kind="string",
            project_team=google_native.storage.v1.BucketAccessControlProjectTeamArgs(
                project_number="string",
                team="string",
            ),
            role="string",
            self_link="string",
        )],
        autoclass=google_native.storage.v1.BucketAutoclassArgs(
            enabled=False,
            terminal_storage_class="string",
            terminal_storage_class_update_time="string",
            toggle_time="string",
        ),
        billing=google_native.storage.v1.BucketBillingArgs(
            requester_pays=False,
        ),
        cors=[google_native.storage.v1.BucketCorsItemArgs(
            max_age_seconds=0,
            method=["string"],
            origin=["string"],
            response_header=["string"],
        )],
        custom_placement_config=google_native.storage.v1.BucketCustomPlacementConfigArgs(
            data_locations=["string"],
        ),
        default_event_based_hold=False,
        default_object_acl=[google_native.storage.v1.ObjectAccessControlArgs(
            bucket="string",
            domain="string",
            email="string",
            entity="string",
            entity_id="string",
            etag="string",
            generation="string",
            id="string",
            kind="string",
            object="string",
            project_team=google_native.storage.v1.ObjectAccessControlProjectTeamArgs(
                project_number="string",
                team="string",
            ),
            role="string",
            self_link="string",
        )],
        enable_object_retention=False,
        encryption=google_native.storage.v1.BucketEncryptionArgs(
            default_kms_key_name="string",
        ),
        etag="string",
        iam_configuration=google_native.storage.v1.BucketIamConfigurationArgs(
            bucket_policy_only=google_native.storage.v1.BucketIamConfigurationBucketPolicyOnlyArgs(
                enabled=False,
                locked_time="string",
            ),
            public_access_prevention="string",
            uniform_bucket_level_access=google_native.storage.v1.BucketIamConfigurationUniformBucketLevelAccessArgs(
                enabled=False,
                locked_time="string",
            ),
        ),
        id="string",
        kind="string",
        labels={
            "string": "string",
        },
        lifecycle=google_native.storage.v1.BucketLifecycleArgs(
            rule=[google_native.storage.v1.BucketLifecycleRuleItemArgs(
                action=google_native.storage.v1.BucketLifecycleRuleItemActionArgs(
                    storage_class="string",
                    type="string",
                ),
                condition=google_native.storage.v1.BucketLifecycleRuleItemConditionArgs(
                    age=0,
                    created_before="string",
                    custom_time_before="string",
                    days_since_custom_time=0,
                    days_since_noncurrent_time=0,
                    is_live=False,
                    matches_pattern="string",
                    matches_prefix=["string"],
                    matches_storage_class=["string"],
                    matches_suffix=["string"],
                    noncurrent_time_before="string",
                    num_newer_versions=0,
                ),
            )],
        ),
        location="string",
        location_type="string",
        logging=google_native.storage.v1.BucketLoggingArgs(
            log_bucket="string",
            log_object_prefix="string",
        ),
        metageneration="string",
        name="string",
        object_retention=google_native.storage.v1.BucketObjectRetentionArgs(
            mode="string",
            retain_until_time="string",
        ),
        owner=google_native.storage.v1.BucketOwnerArgs(
            entity="string",
            entity_id="string",
        ),
        predefined_acl="string",
        predefined_default_object_acl="string",
        project="string",
        project_number="string",
        projection="string",
        retention_policy=google_native.storage.v1.BucketRetentionPolicyArgs(
            effective_time="string",
            is_locked=False,
            retention_period="string",
        ),
        rpo="string",
        satisfies_pzs=False,
        self_link="string",
        soft_delete_policy=google_native.storage.v1.BucketSoftDeletePolicyArgs(
            effective_time="string",
            retention_duration_seconds="string",
        ),
        storage_class="string",
        time_created="string",
        updated="string",
        user_project="string",
        versioning=google_native.storage.v1.BucketVersioningArgs(
            enabled=False,
        ),
        website=google_native.storage.v1.BucketWebsiteArgs(
            main_page_suffix="string",
            not_found_page="string",
        ))
    
    const google_nativeBucketResource = new google_native.storage.v1.Bucket("google-nativeBucketResource", {
        acl: [{
            bucket: "string",
            domain: "string",
            email: "string",
            entity: "string",
            entityId: "string",
            etag: "string",
            id: "string",
            kind: "string",
            projectTeam: {
                projectNumber: "string",
                team: "string",
            },
            role: "string",
            selfLink: "string",
        }],
        autoclass: {
            enabled: false,
            terminalStorageClass: "string",
            terminalStorageClassUpdateTime: "string",
            toggleTime: "string",
        },
        billing: {
            requesterPays: false,
        },
        cors: [{
            maxAgeSeconds: 0,
            method: ["string"],
            origin: ["string"],
            responseHeader: ["string"],
        }],
        customPlacementConfig: {
            dataLocations: ["string"],
        },
        defaultEventBasedHold: false,
        defaultObjectAcl: [{
            bucket: "string",
            domain: "string",
            email: "string",
            entity: "string",
            entityId: "string",
            etag: "string",
            generation: "string",
            id: "string",
            kind: "string",
            object: "string",
            projectTeam: {
                projectNumber: "string",
                team: "string",
            },
            role: "string",
            selfLink: "string",
        }],
        enableObjectRetention: false,
        encryption: {
            defaultKmsKeyName: "string",
        },
        etag: "string",
        iamConfiguration: {
            bucketPolicyOnly: {
                enabled: false,
                lockedTime: "string",
            },
            publicAccessPrevention: "string",
            uniformBucketLevelAccess: {
                enabled: false,
                lockedTime: "string",
            },
        },
        id: "string",
        kind: "string",
        labels: {
            string: "string",
        },
        lifecycle: {
            rule: [{
                action: {
                    storageClass: "string",
                    type: "string",
                },
                condition: {
                    age: 0,
                    createdBefore: "string",
                    customTimeBefore: "string",
                    daysSinceCustomTime: 0,
                    daysSinceNoncurrentTime: 0,
                    isLive: false,
                    matchesPattern: "string",
                    matchesPrefix: ["string"],
                    matchesStorageClass: ["string"],
                    matchesSuffix: ["string"],
                    noncurrentTimeBefore: "string",
                    numNewerVersions: 0,
                },
            }],
        },
        location: "string",
        locationType: "string",
        logging: {
            logBucket: "string",
            logObjectPrefix: "string",
        },
        metageneration: "string",
        name: "string",
        objectRetention: {
            mode: "string",
            retainUntilTime: "string",
        },
        owner: {
            entity: "string",
            entityId: "string",
        },
        predefinedAcl: "string",
        predefinedDefaultObjectAcl: "string",
        project: "string",
        projectNumber: "string",
        projection: "string",
        retentionPolicy: {
            effectiveTime: "string",
            isLocked: false,
            retentionPeriod: "string",
        },
        rpo: "string",
        satisfiesPZS: false,
        selfLink: "string",
        softDeletePolicy: {
            effectiveTime: "string",
            retentionDurationSeconds: "string",
        },
        storageClass: "string",
        timeCreated: "string",
        updated: "string",
        userProject: "string",
        versioning: {
            enabled: false,
        },
        website: {
            mainPageSuffix: "string",
            notFoundPage: "string",
        },
    });
    
    type: google-native:storage/v1:Bucket
    properties:
        acl:
            - bucket: string
              domain: string
              email: string
              entity: string
              entityId: string
              etag: string
              id: string
              kind: string
              projectTeam:
                projectNumber: string
                team: string
              role: string
              selfLink: string
        autoclass:
            enabled: false
            terminalStorageClass: string
            terminalStorageClassUpdateTime: string
            toggleTime: string
        billing:
            requesterPays: false
        cors:
            - maxAgeSeconds: 0
              method:
                - string
              origin:
                - string
              responseHeader:
                - string
        customPlacementConfig:
            dataLocations:
                - string
        defaultEventBasedHold: false
        defaultObjectAcl:
            - bucket: string
              domain: string
              email: string
              entity: string
              entityId: string
              etag: string
              generation: string
              id: string
              kind: string
              object: string
              projectTeam:
                projectNumber: string
                team: string
              role: string
              selfLink: string
        enableObjectRetention: false
        encryption:
            defaultKmsKeyName: string
        etag: string
        iamConfiguration:
            bucketPolicyOnly:
                enabled: false
                lockedTime: string
            publicAccessPrevention: string
            uniformBucketLevelAccess:
                enabled: false
                lockedTime: string
        id: string
        kind: string
        labels:
            string: string
        lifecycle:
            rule:
                - action:
                    storageClass: string
                    type: string
                  condition:
                    age: 0
                    createdBefore: string
                    customTimeBefore: string
                    daysSinceCustomTime: 0
                    daysSinceNoncurrentTime: 0
                    isLive: false
                    matchesPattern: string
                    matchesPrefix:
                        - string
                    matchesStorageClass:
                        - string
                    matchesSuffix:
                        - string
                    noncurrentTimeBefore: string
                    numNewerVersions: 0
        location: string
        locationType: string
        logging:
            logBucket: string
            logObjectPrefix: string
        metageneration: string
        name: string
        objectRetention:
            mode: string
            retainUntilTime: string
        owner:
            entity: string
            entityId: string
        predefinedAcl: string
        predefinedDefaultObjectAcl: string
        project: string
        projectNumber: string
        projection: string
        retentionPolicy:
            effectiveTime: string
            isLocked: false
            retentionPeriod: string
        rpo: string
        satisfiesPZS: false
        selfLink: string
        softDeletePolicy:
            effectiveTime: string
            retentionDurationSeconds: string
        storageClass: string
        timeCreated: string
        updated: string
        userProject: string
        versioning:
            enabled: false
        website:
            mainPageSuffix: string
            notFoundPage: string
    

    Bucket Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Bucket resource accepts the following input properties:

    Acl List<Pulumi.GoogleNative.Storage.V1.Inputs.BucketAccessControl>
    Access controls on the bucket.
    Autoclass Pulumi.GoogleNative.Storage.V1.Inputs.BucketAutoclass
    The bucket's Autoclass configuration.
    Billing Pulumi.GoogleNative.Storage.V1.Inputs.BucketBilling
    The bucket's billing configuration.
    Cors List<Pulumi.GoogleNative.Storage.V1.Inputs.BucketCorsItem>
    The bucket's Cross-Origin Resource Sharing (CORS) configuration.
    CustomPlacementConfig Pulumi.GoogleNative.Storage.V1.Inputs.BucketCustomPlacementConfig
    The bucket's custom placement configuration for Custom Dual Regions.
    DefaultEventBasedHold bool
    The default value for event-based hold on newly created objects in this bucket. Event-based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here, bucket-level retention is 3 years and the event is loan being paid in full. In this example, these objects will be held intact for any number of years until the event has occurred (event-based hold on the object is released) and then 3 more years after that. That means retention duration of the objects begins from the moment event-based hold transitioned from true to false. Objects under event-based hold cannot be deleted, overwritten or archived until the hold is removed.
    DefaultObjectAcl List<Pulumi.GoogleNative.Storage.V1.Inputs.ObjectAccessControl>
    Default access controls to apply to new objects when no ACL is provided.
    EnableObjectRetention bool
    When set to true, object retention is enabled for this bucket.
    Encryption Pulumi.GoogleNative.Storage.V1.Inputs.BucketEncryption
    Encryption configuration for a bucket.
    Etag string
    HTTP 1.1 Entity tag for the bucket.
    IamConfiguration Pulumi.GoogleNative.Storage.V1.Inputs.BucketIamConfiguration
    The bucket's IAM configuration.
    Id string
    The ID of the bucket. For buckets, the id and name properties are the same.
    Kind string
    The kind of item this is. For buckets, this is always storage#bucket.
    Labels Dictionary<string, string>
    User-provided labels, in key/value pairs.
    Lifecycle Pulumi.GoogleNative.Storage.V1.Inputs.BucketLifecycle
    The bucket's lifecycle configuration. See lifecycle management for more information.
    Location string
    The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list.
    LocationType string
    The type of the bucket location.
    Logging Pulumi.GoogleNative.Storage.V1.Inputs.BucketLogging
    The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.
    Metageneration string
    The metadata generation of this bucket.
    Name string
    The name of the bucket.
    ObjectRetention Pulumi.GoogleNative.Storage.V1.Inputs.BucketObjectRetention
    The bucket's object retention config.
    Owner Pulumi.GoogleNative.Storage.V1.Inputs.BucketOwner
    The owner of the bucket. This is always the project team's owner group.
    PredefinedAcl string
    Apply a predefined set of access controls to this bucket.
    PredefinedDefaultObjectAcl string
    Apply a predefined set of default object access controls to this bucket.
    Project string
    A valid API project identifier.
    ProjectNumber string
    The project number of the project the bucket belongs to.
    Projection string
    Set of properties to return. Defaults to noAcl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.
    RetentionPolicy Pulumi.GoogleNative.Storage.V1.Inputs.BucketRetentionPolicy
    The bucket's retention policy. The retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via a storage.buckets.update operation. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.
    Rpo string
    The Recovery Point Objective (RPO) of this bucket. Set to ASYNC_TURBO to turn on Turbo Replication on a bucket.
    SatisfiesPZS bool
    Reserved for future use.
    SelfLink string
    The URI of this bucket.
    SoftDeletePolicy Pulumi.GoogleNative.Storage.V1.Inputs.BucketSoftDeletePolicy
    The bucket's soft delete policy, which defines the period of time that soft-deleted objects will be retained, and cannot be permanently deleted.
    StorageClass string
    The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes.
    TimeCreated string
    The creation time of the bucket in RFC 3339 format.
    Updated string
    The modification time of the bucket in RFC 3339 format.
    UserProject string
    The project to be billed for this request.
    Versioning Pulumi.GoogleNative.Storage.V1.Inputs.BucketVersioning
    The bucket's versioning configuration.
    Website Pulumi.GoogleNative.Storage.V1.Inputs.BucketWebsite
    The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information.
    Acl []BucketAccessControlTypeArgs
    Access controls on the bucket.
    Autoclass BucketAutoclassArgs
    The bucket's Autoclass configuration.
    Billing BucketBillingArgs
    The bucket's billing configuration.
    Cors []BucketCorsItemArgs
    The bucket's Cross-Origin Resource Sharing (CORS) configuration.
    CustomPlacementConfig BucketCustomPlacementConfigArgs
    The bucket's custom placement configuration for Custom Dual Regions.
    DefaultEventBasedHold bool
    The default value for event-based hold on newly created objects in this bucket. Event-based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here, bucket-level retention is 3 years and the event is loan being paid in full. In this example, these objects will be held intact for any number of years until the event has occurred (event-based hold on the object is released) and then 3 more years after that. That means retention duration of the objects begins from the moment event-based hold transitioned from true to false. Objects under event-based hold cannot be deleted, overwritten or archived until the hold is removed.
    DefaultObjectAcl []ObjectAccessControlTypeArgs
    Default access controls to apply to new objects when no ACL is provided.
    EnableObjectRetention bool
    When set to true, object retention is enabled for this bucket.
    Encryption BucketEncryptionArgs
    Encryption configuration for a bucket.
    Etag string
    HTTP 1.1 Entity tag for the bucket.
    IamConfiguration BucketIamConfigurationArgs
    The bucket's IAM configuration.
    Id string
    The ID of the bucket. For buckets, the id and name properties are the same.
    Kind string
    The kind of item this is. For buckets, this is always storage#bucket.
    Labels map[string]string
    User-provided labels, in key/value pairs.
    Lifecycle BucketLifecycleArgs
    The bucket's lifecycle configuration. See lifecycle management for more information.
    Location string
    The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list.
    LocationType string
    The type of the bucket location.
    Logging BucketLoggingArgs
    The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.
    Metageneration string
    The metadata generation of this bucket.
    Name string
    The name of the bucket.
    ObjectRetention BucketObjectRetentionArgs
    The bucket's object retention config.
    Owner BucketOwnerArgs
    The owner of the bucket. This is always the project team's owner group.
    PredefinedAcl string
    Apply a predefined set of access controls to this bucket.
    PredefinedDefaultObjectAcl string
    Apply a predefined set of default object access controls to this bucket.
    Project string
    A valid API project identifier.
    ProjectNumber string
    The project number of the project the bucket belongs to.
    Projection string
    Set of properties to return. Defaults to noAcl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.
    RetentionPolicy BucketRetentionPolicyArgs
    The bucket's retention policy. The retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via a storage.buckets.update operation. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.
    Rpo string
    The Recovery Point Objective (RPO) of this bucket. Set to ASYNC_TURBO to turn on Turbo Replication on a bucket.
    SatisfiesPZS bool
    Reserved for future use.
    SelfLink string
    The URI of this bucket.
    SoftDeletePolicy BucketSoftDeletePolicyArgs
    The bucket's soft delete policy, which defines the period of time that soft-deleted objects will be retained, and cannot be permanently deleted.
    StorageClass string
    The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes.
    TimeCreated string
    The creation time of the bucket in RFC 3339 format.
    Updated string
    The modification time of the bucket in RFC 3339 format.
    UserProject string
    The project to be billed for this request.
    Versioning BucketVersioningArgs
    The bucket's versioning configuration.
    Website BucketWebsiteArgs
    The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information.
    acl List<BucketAccessControl>
    Access controls on the bucket.
    autoclass BucketAutoclass
    The bucket's Autoclass configuration.
    billing BucketBilling
    The bucket's billing configuration.
    cors List<BucketCorsItem>
    The bucket's Cross-Origin Resource Sharing (CORS) configuration.
    customPlacementConfig BucketCustomPlacementConfig
    The bucket's custom placement configuration for Custom Dual Regions.
    defaultEventBasedHold Boolean
    The default value for event-based hold on newly created objects in this bucket. Event-based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here, bucket-level retention is 3 years and the event is loan being paid in full. In this example, these objects will be held intact for any number of years until the event has occurred (event-based hold on the object is released) and then 3 more years after that. That means retention duration of the objects begins from the moment event-based hold transitioned from true to false. Objects under event-based hold cannot be deleted, overwritten or archived until the hold is removed.
    defaultObjectAcl List<ObjectAccessControl>
    Default access controls to apply to new objects when no ACL is provided.
    enableObjectRetention Boolean
    When set to true, object retention is enabled for this bucket.
    encryption BucketEncryption
    Encryption configuration for a bucket.
    etag String
    HTTP 1.1 Entity tag for the bucket.
    iamConfiguration BucketIamConfiguration
    The bucket's IAM configuration.
    id String
    The ID of the bucket. For buckets, the id and name properties are the same.
    kind String
    The kind of item this is. For buckets, this is always storage#bucket.
    labels Map<String,String>
    User-provided labels, in key/value pairs.
    lifecycle BucketLifecycle
    The bucket's lifecycle configuration. See lifecycle management for more information.
    location String
    The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list.
    locationType String
    The type of the bucket location.
    logging BucketLogging
    The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.
    metageneration String
    The metadata generation of this bucket.
    name String
    The name of the bucket.
    objectRetention BucketObjectRetention
    The bucket's object retention config.
    owner BucketOwner
    The owner of the bucket. This is always the project team's owner group.
    predefinedAcl String
    Apply a predefined set of access controls to this bucket.
    predefinedDefaultObjectAcl String
    Apply a predefined set of default object access controls to this bucket.
    project String
    A valid API project identifier.
    projectNumber String
    The project number of the project the bucket belongs to.
    projection String
    Set of properties to return. Defaults to noAcl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.
    retentionPolicy BucketRetentionPolicy
    The bucket's retention policy. The retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via a storage.buckets.update operation. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.
    rpo String
    The Recovery Point Objective (RPO) of this bucket. Set to ASYNC_TURBO to turn on Turbo Replication on a bucket.
    satisfiesPZS Boolean
    Reserved for future use.
    selfLink String
    The URI of this bucket.
    softDeletePolicy BucketSoftDeletePolicy
    The bucket's soft delete policy, which defines the period of time that soft-deleted objects will be retained, and cannot be permanently deleted.
    storageClass String
    The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes.
    timeCreated String
    The creation time of the bucket in RFC 3339 format.
    updated String
    The modification time of the bucket in RFC 3339 format.
    userProject String
    The project to be billed for this request.
    versioning BucketVersioning
    The bucket's versioning configuration.
    website BucketWebsite
    The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information.
    acl BucketAccessControl[]
    Access controls on the bucket.
    autoclass BucketAutoclass
    The bucket's Autoclass configuration.
    billing BucketBilling
    The bucket's billing configuration.
    cors BucketCorsItem[]
    The bucket's Cross-Origin Resource Sharing (CORS) configuration.
    customPlacementConfig BucketCustomPlacementConfig
    The bucket's custom placement configuration for Custom Dual Regions.
    defaultEventBasedHold boolean
    The default value for event-based hold on newly created objects in this bucket. Event-based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here, bucket-level retention is 3 years and the event is loan being paid in full. In this example, these objects will be held intact for any number of years until the event has occurred (event-based hold on the object is released) and then 3 more years after that. That means retention duration of the objects begins from the moment event-based hold transitioned from true to false. Objects under event-based hold cannot be deleted, overwritten or archived until the hold is removed.
    defaultObjectAcl ObjectAccessControl[]
    Default access controls to apply to new objects when no ACL is provided.
    enableObjectRetention boolean
    When set to true, object retention is enabled for this bucket.
    encryption BucketEncryption
    Encryption configuration for a bucket.
    etag string
    HTTP 1.1 Entity tag for the bucket.
    iamConfiguration BucketIamConfiguration
    The bucket's IAM configuration.
    id string
    The ID of the bucket. For buckets, the id and name properties are the same.
    kind string
    The kind of item this is. For buckets, this is always storage#bucket.
    labels {[key: string]: string}
    User-provided labels, in key/value pairs.
    lifecycle BucketLifecycle
    The bucket's lifecycle configuration. See lifecycle management for more information.
    location string
    The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list.
    locationType string
    The type of the bucket location.
    logging BucketLogging
    The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.
    metageneration string
    The metadata generation of this bucket.
    name string
    The name of the bucket.
    objectRetention BucketObjectRetention
    The bucket's object retention config.
    owner BucketOwner
    The owner of the bucket. This is always the project team's owner group.
    predefinedAcl string
    Apply a predefined set of access controls to this bucket.
    predefinedDefaultObjectAcl string
    Apply a predefined set of default object access controls to this bucket.
    project string
    A valid API project identifier.
    projectNumber string
    The project number of the project the bucket belongs to.
    projection string
    Set of properties to return. Defaults to noAcl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.
    retentionPolicy BucketRetentionPolicy
    The bucket's retention policy. The retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via a storage.buckets.update operation. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.
    rpo string
    The Recovery Point Objective (RPO) of this bucket. Set to ASYNC_TURBO to turn on Turbo Replication on a bucket.
    satisfiesPZS boolean
    Reserved for future use.
    selfLink string
    The URI of this bucket.
    softDeletePolicy BucketSoftDeletePolicy
    The bucket's soft delete policy, which defines the period of time that soft-deleted objects will be retained, and cannot be permanently deleted.
    storageClass string
    The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes.
    timeCreated string
    The creation time of the bucket in RFC 3339 format.
    updated string
    The modification time of the bucket in RFC 3339 format.
    userProject string
    The project to be billed for this request.
    versioning BucketVersioning
    The bucket's versioning configuration.
    website BucketWebsite
    The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information.
    acl Sequence[BucketAccessControlArgs]
    Access controls on the bucket.
    autoclass BucketAutoclassArgs
    The bucket's Autoclass configuration.
    billing BucketBillingArgs
    The bucket's billing configuration.
    cors Sequence[BucketCorsItemArgs]
    The bucket's Cross-Origin Resource Sharing (CORS) configuration.
    custom_placement_config BucketCustomPlacementConfigArgs
    The bucket's custom placement configuration for Custom Dual Regions.
    default_event_based_hold bool
    The default value for event-based hold on newly created objects in this bucket. Event-based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here, bucket-level retention is 3 years and the event is loan being paid in full. In this example, these objects will be held intact for any number of years until the event has occurred (event-based hold on the object is released) and then 3 more years after that. That means retention duration of the objects begins from the moment event-based hold transitioned from true to false. Objects under event-based hold cannot be deleted, overwritten or archived until the hold is removed.
    default_object_acl Sequence[ObjectAccessControlArgs]
    Default access controls to apply to new objects when no ACL is provided.
    enable_object_retention bool
    When set to true, object retention is enabled for this bucket.
    encryption BucketEncryptionArgs
    Encryption configuration for a bucket.
    etag str
    HTTP 1.1 Entity tag for the bucket.
    iam_configuration BucketIamConfigurationArgs
    The bucket's IAM configuration.
    id str
    The ID of the bucket. For buckets, the id and name properties are the same.
    kind str
    The kind of item this is. For buckets, this is always storage#bucket.
    labels Mapping[str, str]
    User-provided labels, in key/value pairs.
    lifecycle BucketLifecycleArgs
    The bucket's lifecycle configuration. See lifecycle management for more information.
    location str
    The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list.
    location_type str
    The type of the bucket location.
    logging BucketLoggingArgs
    The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.
    metageneration str
    The metadata generation of this bucket.
    name str
    The name of the bucket.
    object_retention BucketObjectRetentionArgs
    The bucket's object retention config.
    owner BucketOwnerArgs
    The owner of the bucket. This is always the project team's owner group.
    predefined_acl str
    Apply a predefined set of access controls to this bucket.
    predefined_default_object_acl str
    Apply a predefined set of default object access controls to this bucket.
    project str
    A valid API project identifier.
    project_number str
    The project number of the project the bucket belongs to.
    projection str
    Set of properties to return. Defaults to noAcl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.
    retention_policy BucketRetentionPolicyArgs
    The bucket's retention policy. The retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via a storage.buckets.update operation. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.
    rpo str
    The Recovery Point Objective (RPO) of this bucket. Set to ASYNC_TURBO to turn on Turbo Replication on a bucket.
    satisfies_pzs bool
    Reserved for future use.
    self_link str
    The URI of this bucket.
    soft_delete_policy BucketSoftDeletePolicyArgs
    The bucket's soft delete policy, which defines the period of time that soft-deleted objects will be retained, and cannot be permanently deleted.
    storage_class str
    The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes.
    time_created str
    The creation time of the bucket in RFC 3339 format.
    updated str
    The modification time of the bucket in RFC 3339 format.
    user_project str
    The project to be billed for this request.
    versioning BucketVersioningArgs
    The bucket's versioning configuration.
    website BucketWebsiteArgs
    The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information.
    acl List<Property Map>
    Access controls on the bucket.
    autoclass Property Map
    The bucket's Autoclass configuration.
    billing Property Map
    The bucket's billing configuration.
    cors List<Property Map>
    The bucket's Cross-Origin Resource Sharing (CORS) configuration.
    customPlacementConfig Property Map
    The bucket's custom placement configuration for Custom Dual Regions.
    defaultEventBasedHold Boolean
    The default value for event-based hold on newly created objects in this bucket. Event-based hold is a way to retain objects indefinitely until an event occurs, signified by the hold's release. After being released, such objects will be subject to bucket-level retention (if any). One sample use case of this flag is for banks to hold loan documents for at least 3 years after loan is paid in full. Here, bucket-level retention is 3 years and the event is loan being paid in full. In this example, these objects will be held intact for any number of years until the event has occurred (event-based hold on the object is released) and then 3 more years after that. That means retention duration of the objects begins from the moment event-based hold transitioned from true to false. Objects under event-based hold cannot be deleted, overwritten or archived until the hold is removed.
    defaultObjectAcl List<Property Map>
    Default access controls to apply to new objects when no ACL is provided.
    enableObjectRetention Boolean
    When set to true, object retention is enabled for this bucket.
    encryption Property Map
    Encryption configuration for a bucket.
    etag String
    HTTP 1.1 Entity tag for the bucket.
    iamConfiguration Property Map
    The bucket's IAM configuration.
    id String
    The ID of the bucket. For buckets, the id and name properties are the same.
    kind String
    The kind of item this is. For buckets, this is always storage#bucket.
    labels Map<String>
    User-provided labels, in key/value pairs.
    lifecycle Property Map
    The bucket's lifecycle configuration. See lifecycle management for more information.
    location String
    The location of the bucket. Object data for objects in the bucket resides in physical storage within this region. Defaults to US. See the developer's guide for the authoritative list.
    locationType String
    The type of the bucket location.
    logging Property Map
    The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs.
    metageneration String
    The metadata generation of this bucket.
    name String
    The name of the bucket.
    objectRetention Property Map
    The bucket's object retention config.
    owner Property Map
    The owner of the bucket. This is always the project team's owner group.
    predefinedAcl String
    Apply a predefined set of access controls to this bucket.
    predefinedDefaultObjectAcl String
    Apply a predefined set of default object access controls to this bucket.
    project String
    A valid API project identifier.
    projectNumber String
    The project number of the project the bucket belongs to.
    projection String
    Set of properties to return. Defaults to noAcl, unless the bucket resource specifies acl or defaultObjectAcl properties, when it defaults to full.
    retentionPolicy Property Map
    The bucket's retention policy. The retention policy enforces a minimum retention time for all objects contained in the bucket, based on their creation time. Any attempt to overwrite or delete objects younger than the retention period will result in a PERMISSION_DENIED error. An unlocked retention policy can be modified or removed from the bucket via a storage.buckets.update operation. A locked retention policy cannot be removed or shortened in duration for the lifetime of the bucket. Attempting to remove or decrease period of a locked retention policy will result in a PERMISSION_DENIED error.
    rpo String
    The Recovery Point Objective (RPO) of this bucket. Set to ASYNC_TURBO to turn on Turbo Replication on a bucket.
    satisfiesPZS Boolean
    Reserved for future use.
    selfLink String
    The URI of this bucket.
    softDeletePolicy Property Map
    The bucket's soft delete policy, which defines the period of time that soft-deleted objects will be retained, and cannot be permanently deleted.
    storageClass String
    The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes.
    timeCreated String
    The creation time of the bucket in RFC 3339 format.
    updated String
    The modification time of the bucket in RFC 3339 format.
    userProject String
    The project to be billed for this request.
    versioning Property Map
    The bucket's versioning configuration.
    website Property Map
    The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Bucket resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Supporting Types

    BucketAccessControl, BucketAccessControlArgs

    Bucket string
    The name of the bucket.
    Domain string
    The domain associated with the entity, if any.
    Email string
    The email address associated with the entity, if any.
    Entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    EntityId string
    The ID for the entity, if any.
    Etag string
    HTTP 1.1 Entity tag for the access-control entry.
    Id string
    The ID of the access-control entry.
    Kind string
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    ProjectTeam Pulumi.GoogleNative.Storage.V1.Inputs.BucketAccessControlProjectTeam
    The project team associated with the entity, if any.
    Role string
    The access permission for the entity.
    SelfLink string
    The link to this access-control entry.
    Bucket string
    The name of the bucket.
    Domain string
    The domain associated with the entity, if any.
    Email string
    The email address associated with the entity, if any.
    Entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    EntityId string
    The ID for the entity, if any.
    Etag string
    HTTP 1.1 Entity tag for the access-control entry.
    Id string
    The ID of the access-control entry.
    Kind string
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    ProjectTeam BucketAccessControlProjectTeam
    The project team associated with the entity, if any.
    Role string
    The access permission for the entity.
    SelfLink string
    The link to this access-control entry.
    bucket String
    The name of the bucket.
    domain String
    The domain associated with the entity, if any.
    email String
    The email address associated with the entity, if any.
    entity String
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId String
    The ID for the entity, if any.
    etag String
    HTTP 1.1 Entity tag for the access-control entry.
    id String
    The ID of the access-control entry.
    kind String
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    projectTeam BucketAccessControlProjectTeam
    The project team associated with the entity, if any.
    role String
    The access permission for the entity.
    selfLink String
    The link to this access-control entry.
    bucket string
    The name of the bucket.
    domain string
    The domain associated with the entity, if any.
    email string
    The email address associated with the entity, if any.
    entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId string
    The ID for the entity, if any.
    etag string
    HTTP 1.1 Entity tag for the access-control entry.
    id string
    The ID of the access-control entry.
    kind string
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    projectTeam BucketAccessControlProjectTeam
    The project team associated with the entity, if any.
    role string
    The access permission for the entity.
    selfLink string
    The link to this access-control entry.
    bucket str
    The name of the bucket.
    domain str
    The domain associated with the entity, if any.
    email str
    The email address associated with the entity, if any.
    entity str
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entity_id str
    The ID for the entity, if any.
    etag str
    HTTP 1.1 Entity tag for the access-control entry.
    id str
    The ID of the access-control entry.
    kind str
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    project_team BucketAccessControlProjectTeam
    The project team associated with the entity, if any.
    role str
    The access permission for the entity.
    self_link str
    The link to this access-control entry.
    bucket String
    The name of the bucket.
    domain String
    The domain associated with the entity, if any.
    email String
    The email address associated with the entity, if any.
    entity String
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId String
    The ID for the entity, if any.
    etag String
    HTTP 1.1 Entity tag for the access-control entry.
    id String
    The ID of the access-control entry.
    kind String
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    projectTeam Property Map
    The project team associated with the entity, if any.
    role String
    The access permission for the entity.
    selfLink String
    The link to this access-control entry.

    BucketAccessControlProjectTeam, BucketAccessControlProjectTeamArgs

    ProjectNumber string
    The project number.
    Team string
    The team.
    ProjectNumber string
    The project number.
    Team string
    The team.
    projectNumber String
    The project number.
    team String
    The team.
    projectNumber string
    The project number.
    team string
    The team.
    project_number str
    The project number.
    team str
    The team.
    projectNumber String
    The project number.
    team String
    The team.

    BucketAccessControlProjectTeamResponse, BucketAccessControlProjectTeamResponseArgs

    ProjectNumber string
    The project number.
    Team string
    The team.
    ProjectNumber string
    The project number.
    Team string
    The team.
    projectNumber String
    The project number.
    team String
    The team.
    projectNumber string
    The project number.
    team string
    The team.
    project_number str
    The project number.
    team str
    The team.
    projectNumber String
    The project number.
    team String
    The team.

    BucketAccessControlResponse, BucketAccessControlResponseArgs

    Bucket string
    The name of the bucket.
    Domain string
    The domain associated with the entity, if any.
    Email string
    The email address associated with the entity, if any.
    Entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    EntityId string
    The ID for the entity, if any.
    Etag string
    HTTP 1.1 Entity tag for the access-control entry.
    Kind string
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    ProjectTeam Pulumi.GoogleNative.Storage.V1.Inputs.BucketAccessControlProjectTeamResponse
    The project team associated with the entity, if any.
    Role string
    The access permission for the entity.
    SelfLink string
    The link to this access-control entry.
    Bucket string
    The name of the bucket.
    Domain string
    The domain associated with the entity, if any.
    Email string
    The email address associated with the entity, if any.
    Entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    EntityId string
    The ID for the entity, if any.
    Etag string
    HTTP 1.1 Entity tag for the access-control entry.
    Kind string
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    ProjectTeam BucketAccessControlProjectTeamResponse
    The project team associated with the entity, if any.
    Role string
    The access permission for the entity.
    SelfLink string
    The link to this access-control entry.
    bucket String
    The name of the bucket.
    domain String
    The domain associated with the entity, if any.
    email String
    The email address associated with the entity, if any.
    entity String
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId String
    The ID for the entity, if any.
    etag String
    HTTP 1.1 Entity tag for the access-control entry.
    kind String
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    projectTeam BucketAccessControlProjectTeamResponse
    The project team associated with the entity, if any.
    role String
    The access permission for the entity.
    selfLink String
    The link to this access-control entry.
    bucket string
    The name of the bucket.
    domain string
    The domain associated with the entity, if any.
    email string
    The email address associated with the entity, if any.
    entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId string
    The ID for the entity, if any.
    etag string
    HTTP 1.1 Entity tag for the access-control entry.
    kind string
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    projectTeam BucketAccessControlProjectTeamResponse
    The project team associated with the entity, if any.
    role string
    The access permission for the entity.
    selfLink string
    The link to this access-control entry.
    bucket str
    The name of the bucket.
    domain str
    The domain associated with the entity, if any.
    email str
    The email address associated with the entity, if any.
    entity str
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entity_id str
    The ID for the entity, if any.
    etag str
    HTTP 1.1 Entity tag for the access-control entry.
    kind str
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    project_team BucketAccessControlProjectTeamResponse
    The project team associated with the entity, if any.
    role str
    The access permission for the entity.
    self_link str
    The link to this access-control entry.
    bucket String
    The name of the bucket.
    domain String
    The domain associated with the entity, if any.
    email String
    The email address associated with the entity, if any.
    entity String
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId String
    The ID for the entity, if any.
    etag String
    HTTP 1.1 Entity tag for the access-control entry.
    kind String
    The kind of item this is. For bucket access control entries, this is always storage#bucketAccessControl.
    projectTeam Property Map
    The project team associated with the entity, if any.
    role String
    The access permission for the entity.
    selfLink String
    The link to this access-control entry.

    BucketAutoclass, BucketAutoclassArgs

    Enabled bool
    Whether or not Autoclass is enabled on this bucket
    TerminalStorageClass string
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    TerminalStorageClassUpdateTime string
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    ToggleTime string
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.
    Enabled bool
    Whether or not Autoclass is enabled on this bucket
    TerminalStorageClass string
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    TerminalStorageClassUpdateTime string
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    ToggleTime string
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.
    enabled Boolean
    Whether or not Autoclass is enabled on this bucket
    terminalStorageClass String
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    terminalStorageClassUpdateTime String
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    toggleTime String
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.
    enabled boolean
    Whether or not Autoclass is enabled on this bucket
    terminalStorageClass string
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    terminalStorageClassUpdateTime string
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    toggleTime string
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.
    enabled bool
    Whether or not Autoclass is enabled on this bucket
    terminal_storage_class str
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    terminal_storage_class_update_time str
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    toggle_time str
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.
    enabled Boolean
    Whether or not Autoclass is enabled on this bucket
    terminalStorageClass String
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    terminalStorageClassUpdateTime String
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    toggleTime String
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.

    BucketAutoclassResponse, BucketAutoclassResponseArgs

    Enabled bool
    Whether or not Autoclass is enabled on this bucket
    TerminalStorageClass string
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    TerminalStorageClassUpdateTime string
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    ToggleTime string
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.
    Enabled bool
    Whether or not Autoclass is enabled on this bucket
    TerminalStorageClass string
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    TerminalStorageClassUpdateTime string
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    ToggleTime string
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.
    enabled Boolean
    Whether or not Autoclass is enabled on this bucket
    terminalStorageClass String
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    terminalStorageClassUpdateTime String
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    toggleTime String
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.
    enabled boolean
    Whether or not Autoclass is enabled on this bucket
    terminalStorageClass string
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    terminalStorageClassUpdateTime string
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    toggleTime string
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.
    enabled bool
    Whether or not Autoclass is enabled on this bucket
    terminal_storage_class str
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    terminal_storage_class_update_time str
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    toggle_time str
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.
    enabled Boolean
    Whether or not Autoclass is enabled on this bucket
    terminalStorageClass String
    The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE.
    terminalStorageClassUpdateTime String
    A date and time in RFC 3339 format representing the time of the most recent update to "terminalStorageClass".
    toggleTime String
    A date and time in RFC 3339 format representing the instant at which "enabled" was last toggled.

    BucketBilling, BucketBillingArgs

    RequesterPays bool
    When set to true, Requester Pays is enabled for this bucket.
    RequesterPays bool
    When set to true, Requester Pays is enabled for this bucket.
    requesterPays Boolean
    When set to true, Requester Pays is enabled for this bucket.
    requesterPays boolean
    When set to true, Requester Pays is enabled for this bucket.
    requester_pays bool
    When set to true, Requester Pays is enabled for this bucket.
    requesterPays Boolean
    When set to true, Requester Pays is enabled for this bucket.

    BucketBillingResponse, BucketBillingResponseArgs

    RequesterPays bool
    When set to true, Requester Pays is enabled for this bucket.
    RequesterPays bool
    When set to true, Requester Pays is enabled for this bucket.
    requesterPays Boolean
    When set to true, Requester Pays is enabled for this bucket.
    requesterPays boolean
    When set to true, Requester Pays is enabled for this bucket.
    requester_pays bool
    When set to true, Requester Pays is enabled for this bucket.
    requesterPays Boolean
    When set to true, Requester Pays is enabled for this bucket.

    BucketCorsItem, BucketCorsItemArgs

    MaxAgeSeconds int
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    Method List<string>
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    Origin List<string>
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    ResponseHeader List<string>
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
    MaxAgeSeconds int
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    Method []string
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    Origin []string
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    ResponseHeader []string
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
    maxAgeSeconds Integer
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    method List<String>
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    origin List<String>
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    responseHeader List<String>
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
    maxAgeSeconds number
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    method string[]
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    origin string[]
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    responseHeader string[]
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
    max_age_seconds int
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    method Sequence[str]
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    origin Sequence[str]
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    response_header Sequence[str]
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
    maxAgeSeconds Number
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    method List<String>
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    origin List<String>
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    responseHeader List<String>
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.

    BucketCorsItemResponse, BucketCorsItemResponseArgs

    MaxAgeSeconds int
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    Method List<string>
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    Origin List<string>
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    ResponseHeader List<string>
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
    MaxAgeSeconds int
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    Method []string
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    Origin []string
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    ResponseHeader []string
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
    maxAgeSeconds Integer
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    method List<String>
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    origin List<String>
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    responseHeader List<String>
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
    maxAgeSeconds number
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    method string[]
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    origin string[]
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    responseHeader string[]
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
    max_age_seconds int
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    method Sequence[str]
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    origin Sequence[str]
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    response_header Sequence[str]
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.
    maxAgeSeconds Number
    The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.
    method List<String>
    The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "any method".
    origin List<String>
    The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin".
    responseHeader List<String>
    The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.

    BucketCustomPlacementConfig, BucketCustomPlacementConfigArgs

    DataLocations List<string>
    The list of regional locations in which data is placed.
    DataLocations []string
    The list of regional locations in which data is placed.
    dataLocations List<String>
    The list of regional locations in which data is placed.
    dataLocations string[]
    The list of regional locations in which data is placed.
    data_locations Sequence[str]
    The list of regional locations in which data is placed.
    dataLocations List<String>
    The list of regional locations in which data is placed.

    BucketCustomPlacementConfigResponse, BucketCustomPlacementConfigResponseArgs

    DataLocations List<string>
    The list of regional locations in which data is placed.
    DataLocations []string
    The list of regional locations in which data is placed.
    dataLocations List<String>
    The list of regional locations in which data is placed.
    dataLocations string[]
    The list of regional locations in which data is placed.
    data_locations Sequence[str]
    The list of regional locations in which data is placed.
    dataLocations List<String>
    The list of regional locations in which data is placed.

    BucketEncryption, BucketEncryptionArgs

    DefaultKmsKeyName string
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
    DefaultKmsKeyName string
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
    defaultKmsKeyName String
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
    defaultKmsKeyName string
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
    default_kms_key_name str
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
    defaultKmsKeyName String
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.

    BucketEncryptionResponse, BucketEncryptionResponseArgs

    DefaultKmsKeyName string
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
    DefaultKmsKeyName string
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
    defaultKmsKeyName String
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
    defaultKmsKeyName string
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
    default_kms_key_name str
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.
    defaultKmsKeyName String
    A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified.

    BucketIamConfiguration, BucketIamConfigurationArgs

    BucketPolicyOnly Pulumi.GoogleNative.Storage.V1.Inputs.BucketIamConfigurationBucketPolicyOnly
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    PublicAccessPrevention string
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    UniformBucketLevelAccess Pulumi.GoogleNative.Storage.V1.Inputs.BucketIamConfigurationUniformBucketLevelAccess
    The bucket's uniform bucket-level access configuration.
    BucketPolicyOnly BucketIamConfigurationBucketPolicyOnly
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    PublicAccessPrevention string
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    UniformBucketLevelAccess BucketIamConfigurationUniformBucketLevelAccess
    The bucket's uniform bucket-level access configuration.
    bucketPolicyOnly BucketIamConfigurationBucketPolicyOnly
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    publicAccessPrevention String
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    uniformBucketLevelAccess BucketIamConfigurationUniformBucketLevelAccess
    The bucket's uniform bucket-level access configuration.
    bucketPolicyOnly BucketIamConfigurationBucketPolicyOnly
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    publicAccessPrevention string
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    uniformBucketLevelAccess BucketIamConfigurationUniformBucketLevelAccess
    The bucket's uniform bucket-level access configuration.
    bucket_policy_only BucketIamConfigurationBucketPolicyOnly
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    public_access_prevention str
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    uniform_bucket_level_access BucketIamConfigurationUniformBucketLevelAccess
    The bucket's uniform bucket-level access configuration.
    bucketPolicyOnly Property Map
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    publicAccessPrevention String
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    uniformBucketLevelAccess Property Map
    The bucket's uniform bucket-level access configuration.

    BucketIamConfigurationBucketPolicyOnly, BucketIamConfigurationBucketPolicyOnlyArgs

    Enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    LockedTime string
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.
    Enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    LockedTime string
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled Boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime String
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime string
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    locked_time str
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled Boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime String
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.

    BucketIamConfigurationBucketPolicyOnlyResponse, BucketIamConfigurationBucketPolicyOnlyResponseArgs

    Enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    LockedTime string
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.
    Enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    LockedTime string
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled Boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime String
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime string
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    locked_time str
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled Boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime String
    The deadline for changing iamConfiguration.bucketPolicyOnly.enabled from true to false in RFC 3339 format. iamConfiguration.bucketPolicyOnly.enabled may be changed from true to false until the locked time, after which the field is immutable.

    BucketIamConfigurationResponse, BucketIamConfigurationResponseArgs

    BucketPolicyOnly Pulumi.GoogleNative.Storage.V1.Inputs.BucketIamConfigurationBucketPolicyOnlyResponse
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    PublicAccessPrevention string
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    UniformBucketLevelAccess Pulumi.GoogleNative.Storage.V1.Inputs.BucketIamConfigurationUniformBucketLevelAccessResponse
    The bucket's uniform bucket-level access configuration.
    BucketPolicyOnly BucketIamConfigurationBucketPolicyOnlyResponse
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    PublicAccessPrevention string
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    UniformBucketLevelAccess BucketIamConfigurationUniformBucketLevelAccessResponse
    The bucket's uniform bucket-level access configuration.
    bucketPolicyOnly BucketIamConfigurationBucketPolicyOnlyResponse
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    publicAccessPrevention String
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    uniformBucketLevelAccess BucketIamConfigurationUniformBucketLevelAccessResponse
    The bucket's uniform bucket-level access configuration.
    bucketPolicyOnly BucketIamConfigurationBucketPolicyOnlyResponse
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    publicAccessPrevention string
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    uniformBucketLevelAccess BucketIamConfigurationUniformBucketLevelAccessResponse
    The bucket's uniform bucket-level access configuration.
    bucket_policy_only BucketIamConfigurationBucketPolicyOnlyResponse
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    public_access_prevention str
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    uniform_bucket_level_access BucketIamConfigurationUniformBucketLevelAccessResponse
    The bucket's uniform bucket-level access configuration.
    bucketPolicyOnly Property Map
    The bucket's uniform bucket-level access configuration. The feature was formerly known as Bucket Policy Only. For backward compatibility, this field will be populated with identical information as the uniformBucketLevelAccess field. We recommend using the uniformBucketLevelAccess field to enable and disable the feature.
    publicAccessPrevention String
    The bucket's Public Access Prevention configuration. Currently, 'inherited' and 'enforced' are supported.
    uniformBucketLevelAccess Property Map
    The bucket's uniform bucket-level access configuration.

    BucketIamConfigurationUniformBucketLevelAccess, BucketIamConfigurationUniformBucketLevelAccessArgs

    Enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    LockedTime string
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
    Enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    LockedTime string
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled Boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime String
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime string
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    locked_time str
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled Boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime String
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.

    BucketIamConfigurationUniformBucketLevelAccessResponse, BucketIamConfigurationUniformBucketLevelAccessResponseArgs

    Enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    LockedTime string
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
    Enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    LockedTime string
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled Boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime String
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime string
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled bool
    If set, access is controlled only by bucket-level or above IAM policies.
    locked_time str
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.
    enabled Boolean
    If set, access is controlled only by bucket-level or above IAM policies.
    lockedTime String
    The deadline for changing iamConfiguration.uniformBucketLevelAccess.enabled from true to false in RFC 3339 format. iamConfiguration.uniformBucketLevelAccess.enabled may be changed from true to false until the locked time, after which the field is immutable.

    BucketLifecycle, BucketLifecycleArgs

    Rule List<Pulumi.GoogleNative.Storage.V1.Inputs.BucketLifecycleRuleItem>
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.
    Rule []BucketLifecycleRuleItem
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.
    rule List<BucketLifecycleRuleItem>
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.
    rule BucketLifecycleRuleItem[]
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.
    rule Sequence[BucketLifecycleRuleItem]
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.
    rule List<Property Map>
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.

    BucketLifecycleResponse, BucketLifecycleResponseArgs

    Rule List<Pulumi.GoogleNative.Storage.V1.Inputs.BucketLifecycleRuleItemResponse>
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.
    Rule []BucketLifecycleRuleItemResponse
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.
    rule List<BucketLifecycleRuleItemResponse>
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.
    rule BucketLifecycleRuleItemResponse[]
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.
    rule Sequence[BucketLifecycleRuleItemResponse]
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.
    rule List<Property Map>
    A lifecycle management rule, which is made of an action to take and the condition(s) under which the action will be taken.

    BucketLifecycleRuleItem, BucketLifecycleRuleItemArgs

    Action BucketLifecycleRuleItemAction
    The action to take.
    Condition BucketLifecycleRuleItemCondition
    The condition(s) under which the action will be taken.
    action BucketLifecycleRuleItemAction
    The action to take.
    condition BucketLifecycleRuleItemCondition
    The condition(s) under which the action will be taken.
    action BucketLifecycleRuleItemAction
    The action to take.
    condition BucketLifecycleRuleItemCondition
    The condition(s) under which the action will be taken.
    action BucketLifecycleRuleItemAction
    The action to take.
    condition BucketLifecycleRuleItemCondition
    The condition(s) under which the action will be taken.
    action Property Map
    The action to take.
    condition Property Map
    The condition(s) under which the action will be taken.

    BucketLifecycleRuleItemAction, BucketLifecycleRuleItemActionArgs

    StorageClass string
    Target storage class. Required iff the type of the action is SetStorageClass.
    Type string
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.
    StorageClass string
    Target storage class. Required iff the type of the action is SetStorageClass.
    Type string
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.
    storageClass String
    Target storage class. Required iff the type of the action is SetStorageClass.
    type String
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.
    storageClass string
    Target storage class. Required iff the type of the action is SetStorageClass.
    type string
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.
    storage_class str
    Target storage class. Required iff the type of the action is SetStorageClass.
    type str
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.
    storageClass String
    Target storage class. Required iff the type of the action is SetStorageClass.
    type String
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.

    BucketLifecycleRuleItemActionResponse, BucketLifecycleRuleItemActionResponseArgs

    StorageClass string
    Target storage class. Required iff the type of the action is SetStorageClass.
    Type string
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.
    StorageClass string
    Target storage class. Required iff the type of the action is SetStorageClass.
    Type string
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.
    storageClass String
    Target storage class. Required iff the type of the action is SetStorageClass.
    type String
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.
    storageClass string
    Target storage class. Required iff the type of the action is SetStorageClass.
    type string
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.
    storage_class str
    Target storage class. Required iff the type of the action is SetStorageClass.
    type str
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.
    storageClass String
    Target storage class. Required iff the type of the action is SetStorageClass.
    type String
    Type of the action. Currently, only Delete, SetStorageClass, and AbortIncompleteMultipartUpload are supported.

    BucketLifecycleRuleItemCondition, BucketLifecycleRuleItemConditionArgs

    Age int
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    CreatedBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    CustomTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    DaysSinceCustomTime int
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    DaysSinceNoncurrentTime int
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    IsLive bool
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    MatchesPattern string
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    MatchesPrefix List<string>
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    MatchesStorageClass List<string>
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    MatchesSuffix List<string>
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    NoncurrentTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    NumNewerVersions int
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.
    Age int
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    CreatedBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    CustomTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    DaysSinceCustomTime int
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    DaysSinceNoncurrentTime int
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    IsLive bool
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    MatchesPattern string
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    MatchesPrefix []string
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    MatchesStorageClass []string
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    MatchesSuffix []string
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    NoncurrentTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    NumNewerVersions int
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.
    age Integer
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    createdBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    customTimeBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    daysSinceCustomTime Integer
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    daysSinceNoncurrentTime Integer
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    isLive Boolean
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    matchesPattern String
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    matchesPrefix List<String>
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    matchesStorageClass List<String>
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    matchesSuffix List<String>
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    noncurrentTimeBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    numNewerVersions Integer
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.
    age number
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    createdBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    customTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    daysSinceCustomTime number
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    daysSinceNoncurrentTime number
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    isLive boolean
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    matchesPattern string
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    matchesPrefix string[]
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    matchesStorageClass string[]
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    matchesSuffix string[]
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    noncurrentTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    numNewerVersions number
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.
    age int
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    created_before str
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    custom_time_before str
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    days_since_custom_time int
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    days_since_noncurrent_time int
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    is_live bool
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    matches_pattern str
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    matches_prefix Sequence[str]
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    matches_storage_class Sequence[str]
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    matches_suffix Sequence[str]
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    noncurrent_time_before str
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    num_newer_versions int
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.
    age Number
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    createdBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    customTimeBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    daysSinceCustomTime Number
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    daysSinceNoncurrentTime Number
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    isLive Boolean
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    matchesPattern String
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    matchesPrefix List<String>
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    matchesStorageClass List<String>
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    matchesSuffix List<String>
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    noncurrentTimeBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    numNewerVersions Number
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.

    BucketLifecycleRuleItemConditionResponse, BucketLifecycleRuleItemConditionResponseArgs

    Age int
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    CreatedBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    CustomTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    DaysSinceCustomTime int
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    DaysSinceNoncurrentTime int
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    IsLive bool
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    MatchesPattern string
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    MatchesPrefix List<string>
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    MatchesStorageClass List<string>
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    MatchesSuffix List<string>
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    NoncurrentTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    NumNewerVersions int
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.
    Age int
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    CreatedBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    CustomTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    DaysSinceCustomTime int
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    DaysSinceNoncurrentTime int
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    IsLive bool
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    MatchesPattern string
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    MatchesPrefix []string
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    MatchesStorageClass []string
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    MatchesSuffix []string
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    NoncurrentTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    NumNewerVersions int
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.
    age Integer
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    createdBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    customTimeBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    daysSinceCustomTime Integer
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    daysSinceNoncurrentTime Integer
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    isLive Boolean
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    matchesPattern String
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    matchesPrefix List<String>
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    matchesStorageClass List<String>
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    matchesSuffix List<String>
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    noncurrentTimeBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    numNewerVersions Integer
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.
    age number
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    createdBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    customTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    daysSinceCustomTime number
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    daysSinceNoncurrentTime number
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    isLive boolean
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    matchesPattern string
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    matchesPrefix string[]
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    matchesStorageClass string[]
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    matchesSuffix string[]
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    noncurrentTimeBefore string
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    numNewerVersions number
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.
    age int
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    created_before str
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    custom_time_before str
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    days_since_custom_time int
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    days_since_noncurrent_time int
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    is_live bool
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    matches_pattern str
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    matches_prefix Sequence[str]
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    matches_storage_class Sequence[str]
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    matches_suffix Sequence[str]
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    noncurrent_time_before str
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    num_newer_versions int
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.
    age Number
    Age of an object (in days). This condition is satisfied when an object reaches the specified age.
    createdBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when an object is created before midnight of the specified date in UTC.
    customTimeBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the custom time on an object is before this date in UTC.
    daysSinceCustomTime Number
    Number of days elapsed since the user-specified timestamp set on an object. The condition is satisfied if the days elapsed is at least this number. If no custom timestamp is specified on an object, the condition does not apply.
    daysSinceNoncurrentTime Number
    Number of days elapsed since the noncurrent timestamp of an object. The condition is satisfied if the days elapsed is at least this number. This condition is relevant only for versioned objects. The value of the field must be a nonnegative integer. If it's zero, the object version will become eligible for Lifecycle action as soon as it becomes noncurrent.
    isLive Boolean
    Relevant only for versioned objects. If the value is true, this condition matches live objects; if the value is false, it matches archived objects.
    matchesPattern String
    A regular expression that satisfies the RE2 syntax. This condition is satisfied when the name of the object matches the RE2 pattern. Note: This feature is currently in the "Early Access" launch stage and is only available to a whitelisted set of users; that means that this feature may be changed in backward-incompatible ways and that it is not guaranteed to be released.
    matchesPrefix List<String>
    List of object name prefixes. This condition will be satisfied when at least one of the prefixes exactly matches the beginning of the object name.
    matchesStorageClass List<String>
    Objects having any of the storage classes specified by this condition will be matched. Values include MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD, and DURABLE_REDUCED_AVAILABILITY.
    matchesSuffix List<String>
    List of object name suffixes. This condition will be satisfied when at least one of the suffixes exactly matches the end of the object name.
    noncurrentTimeBefore String
    A date in RFC 3339 format with only the date part (for instance, "2013-01-15"). This condition is satisfied when the noncurrent time on an object is before this date in UTC. This condition is relevant only for versioned objects.
    numNewerVersions Number
    Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.

    BucketLifecycleRuleItemResponse, BucketLifecycleRuleItemResponseArgs

    Action BucketLifecycleRuleItemActionResponse
    The action to take.
    Condition BucketLifecycleRuleItemConditionResponse
    The condition(s) under which the action will be taken.
    action BucketLifecycleRuleItemActionResponse
    The action to take.
    condition BucketLifecycleRuleItemConditionResponse
    The condition(s) under which the action will be taken.
    action BucketLifecycleRuleItemActionResponse
    The action to take.
    condition BucketLifecycleRuleItemConditionResponse
    The condition(s) under which the action will be taken.
    action BucketLifecycleRuleItemActionResponse
    The action to take.
    condition BucketLifecycleRuleItemConditionResponse
    The condition(s) under which the action will be taken.
    action Property Map
    The action to take.
    condition Property Map
    The condition(s) under which the action will be taken.

    BucketLogging, BucketLoggingArgs

    LogBucket string
    The destination bucket where the current bucket's logs should be placed.
    LogObjectPrefix string
    A prefix for log object names.
    LogBucket string
    The destination bucket where the current bucket's logs should be placed.
    LogObjectPrefix string
    A prefix for log object names.
    logBucket String
    The destination bucket where the current bucket's logs should be placed.
    logObjectPrefix String
    A prefix for log object names.
    logBucket string
    The destination bucket where the current bucket's logs should be placed.
    logObjectPrefix string
    A prefix for log object names.
    log_bucket str
    The destination bucket where the current bucket's logs should be placed.
    log_object_prefix str
    A prefix for log object names.
    logBucket String
    The destination bucket where the current bucket's logs should be placed.
    logObjectPrefix String
    A prefix for log object names.

    BucketLoggingResponse, BucketLoggingResponseArgs

    LogBucket string
    The destination bucket where the current bucket's logs should be placed.
    LogObjectPrefix string
    A prefix for log object names.
    LogBucket string
    The destination bucket where the current bucket's logs should be placed.
    LogObjectPrefix string
    A prefix for log object names.
    logBucket String
    The destination bucket where the current bucket's logs should be placed.
    logObjectPrefix String
    A prefix for log object names.
    logBucket string
    The destination bucket where the current bucket's logs should be placed.
    logObjectPrefix string
    A prefix for log object names.
    log_bucket str
    The destination bucket where the current bucket's logs should be placed.
    log_object_prefix str
    A prefix for log object names.
    logBucket String
    The destination bucket where the current bucket's logs should be placed.
    logObjectPrefix String
    A prefix for log object names.

    BucketObjectRetention, BucketObjectRetentionArgs

    Mode string
    The bucket's object retention mode, can only be Unlocked or Locked.
    RetainUntilTime string
    A time in RFC 3339 format until which object retention protects this object.
    Mode string
    The bucket's object retention mode, can only be Unlocked or Locked.
    RetainUntilTime string
    A time in RFC 3339 format until which object retention protects this object.
    mode String
    The bucket's object retention mode, can only be Unlocked or Locked.
    retainUntilTime String
    A time in RFC 3339 format until which object retention protects this object.
    mode string
    The bucket's object retention mode, can only be Unlocked or Locked.
    retainUntilTime string
    A time in RFC 3339 format until which object retention protects this object.
    mode str
    The bucket's object retention mode, can only be Unlocked or Locked.
    retain_until_time str
    A time in RFC 3339 format until which object retention protects this object.
    mode String
    The bucket's object retention mode, can only be Unlocked or Locked.
    retainUntilTime String
    A time in RFC 3339 format until which object retention protects this object.

    BucketObjectRetentionResponse, BucketObjectRetentionResponseArgs

    Mode string
    The bucket's object retention mode, can only be Unlocked or Locked.
    RetainUntilTime string
    A time in RFC 3339 format until which object retention protects this object.
    Mode string
    The bucket's object retention mode, can only be Unlocked or Locked.
    RetainUntilTime string
    A time in RFC 3339 format until which object retention protects this object.
    mode String
    The bucket's object retention mode, can only be Unlocked or Locked.
    retainUntilTime String
    A time in RFC 3339 format until which object retention protects this object.
    mode string
    The bucket's object retention mode, can only be Unlocked or Locked.
    retainUntilTime string
    A time in RFC 3339 format until which object retention protects this object.
    mode str
    The bucket's object retention mode, can only be Unlocked or Locked.
    retain_until_time str
    A time in RFC 3339 format until which object retention protects this object.
    mode String
    The bucket's object retention mode, can only be Unlocked or Locked.
    retainUntilTime String
    A time in RFC 3339 format until which object retention protects this object.

    BucketOwner, BucketOwnerArgs

    Entity string
    The entity, in the form project-owner-projectId.
    EntityId string
    The ID for the entity.
    Entity string
    The entity, in the form project-owner-projectId.
    EntityId string
    The ID for the entity.
    entity String
    The entity, in the form project-owner-projectId.
    entityId String
    The ID for the entity.
    entity string
    The entity, in the form project-owner-projectId.
    entityId string
    The ID for the entity.
    entity str
    The entity, in the form project-owner-projectId.
    entity_id str
    The ID for the entity.
    entity String
    The entity, in the form project-owner-projectId.
    entityId String
    The ID for the entity.

    BucketOwnerResponse, BucketOwnerResponseArgs

    Entity string
    The entity, in the form project-owner-projectId.
    EntityId string
    The ID for the entity.
    Entity string
    The entity, in the form project-owner-projectId.
    EntityId string
    The ID for the entity.
    entity String
    The entity, in the form project-owner-projectId.
    entityId String
    The ID for the entity.
    entity string
    The entity, in the form project-owner-projectId.
    entityId string
    The ID for the entity.
    entity str
    The entity, in the form project-owner-projectId.
    entity_id str
    The ID for the entity.
    entity String
    The entity, in the form project-owner-projectId.
    entityId String
    The ID for the entity.

    BucketRetentionPolicy, BucketRetentionPolicyArgs

    EffectiveTime string
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    IsLocked bool
    Once locked, an object retention policy cannot be modified.
    RetentionPeriod string
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.
    EffectiveTime string
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    IsLocked bool
    Once locked, an object retention policy cannot be modified.
    RetentionPeriod string
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.
    effectiveTime String
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    isLocked Boolean
    Once locked, an object retention policy cannot be modified.
    retentionPeriod String
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.
    effectiveTime string
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    isLocked boolean
    Once locked, an object retention policy cannot be modified.
    retentionPeriod string
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.
    effective_time str
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    is_locked bool
    Once locked, an object retention policy cannot be modified.
    retention_period str
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.
    effectiveTime String
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    isLocked Boolean
    Once locked, an object retention policy cannot be modified.
    retentionPeriod String
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.

    BucketRetentionPolicyResponse, BucketRetentionPolicyResponseArgs

    EffectiveTime string
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    IsLocked bool
    Once locked, an object retention policy cannot be modified.
    RetentionPeriod string
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.
    EffectiveTime string
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    IsLocked bool
    Once locked, an object retention policy cannot be modified.
    RetentionPeriod string
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.
    effectiveTime String
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    isLocked Boolean
    Once locked, an object retention policy cannot be modified.
    retentionPeriod String
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.
    effectiveTime string
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    isLocked boolean
    Once locked, an object retention policy cannot be modified.
    retentionPeriod string
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.
    effective_time str
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    is_locked bool
    Once locked, an object retention policy cannot be modified.
    retention_period str
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.
    effectiveTime String
    Server-determined value that indicates the time from which policy was enforced and effective. This value is in RFC 3339 format.
    isLocked Boolean
    Once locked, an object retention policy cannot be modified.
    retentionPeriod String
    The duration in seconds that objects need to be retained. Retention duration must be greater than zero and less than 100 years. Note that enforcement of retention periods less than a day is not guaranteed. Such periods should only be used for testing purposes.

    BucketSoftDeletePolicy, BucketSoftDeletePolicyArgs

    EffectiveTime string
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    RetentionDurationSeconds string
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.
    EffectiveTime string
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    RetentionDurationSeconds string
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.
    effectiveTime String
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    retentionDurationSeconds String
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.
    effectiveTime string
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    retentionDurationSeconds string
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.
    effective_time str
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    retention_duration_seconds str
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.
    effectiveTime String
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    retentionDurationSeconds String
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.

    BucketSoftDeletePolicyResponse, BucketSoftDeletePolicyResponseArgs

    EffectiveTime string
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    RetentionDurationSeconds string
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.
    EffectiveTime string
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    RetentionDurationSeconds string
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.
    effectiveTime String
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    retentionDurationSeconds String
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.
    effectiveTime string
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    retentionDurationSeconds string
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.
    effective_time str
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    retention_duration_seconds str
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.
    effectiveTime String
    Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.
    retentionDurationSeconds String
    The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.

    BucketVersioning, BucketVersioningArgs

    Enabled bool
    While set to true, versioning is fully enabled for this bucket.
    Enabled bool
    While set to true, versioning is fully enabled for this bucket.
    enabled Boolean
    While set to true, versioning is fully enabled for this bucket.
    enabled boolean
    While set to true, versioning is fully enabled for this bucket.
    enabled bool
    While set to true, versioning is fully enabled for this bucket.
    enabled Boolean
    While set to true, versioning is fully enabled for this bucket.

    BucketVersioningResponse, BucketVersioningResponseArgs

    Enabled bool
    While set to true, versioning is fully enabled for this bucket.
    Enabled bool
    While set to true, versioning is fully enabled for this bucket.
    enabled Boolean
    While set to true, versioning is fully enabled for this bucket.
    enabled boolean
    While set to true, versioning is fully enabled for this bucket.
    enabled bool
    While set to true, versioning is fully enabled for this bucket.
    enabled Boolean
    While set to true, versioning is fully enabled for this bucket.

    BucketWebsite, BucketWebsiteArgs

    MainPageSuffix string
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    NotFoundPage string
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.
    MainPageSuffix string
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    NotFoundPage string
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.
    mainPageSuffix String
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    notFoundPage String
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.
    mainPageSuffix string
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    notFoundPage string
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.
    main_page_suffix str
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    not_found_page str
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.
    mainPageSuffix String
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    notFoundPage String
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.

    BucketWebsiteResponse, BucketWebsiteResponseArgs

    MainPageSuffix string
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    NotFoundPage string
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.
    MainPageSuffix string
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    NotFoundPage string
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.
    mainPageSuffix String
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    notFoundPage String
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.
    mainPageSuffix string
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    notFoundPage string
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.
    main_page_suffix str
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    not_found_page str
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.
    mainPageSuffix String
    If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages.
    notFoundPage String
    If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result.

    ObjectAccessControl, ObjectAccessControlArgs

    Bucket string
    The name of the bucket.
    Domain string
    The domain associated with the entity, if any.
    Email string
    The email address associated with the entity, if any.
    Entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    EntityId string
    The ID for the entity, if any.
    Etag string
    HTTP 1.1 Entity tag for the access-control entry.
    Generation string
    The content generation of the object, if applied to an object.
    Id string
    The ID of the access-control entry.
    Kind string
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    Object string
    The name of the object, if applied to an object.
    ProjectTeam Pulumi.GoogleNative.Storage.V1.Inputs.ObjectAccessControlProjectTeam
    The project team associated with the entity, if any.
    Role string
    The access permission for the entity.
    SelfLink string
    The link to this access-control entry.
    Bucket string
    The name of the bucket.
    Domain string
    The domain associated with the entity, if any.
    Email string
    The email address associated with the entity, if any.
    Entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    EntityId string
    The ID for the entity, if any.
    Etag string
    HTTP 1.1 Entity tag for the access-control entry.
    Generation string
    The content generation of the object, if applied to an object.
    Id string
    The ID of the access-control entry.
    Kind string
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    Object string
    The name of the object, if applied to an object.
    ProjectTeam ObjectAccessControlProjectTeam
    The project team associated with the entity, if any.
    Role string
    The access permission for the entity.
    SelfLink string
    The link to this access-control entry.
    bucket String
    The name of the bucket.
    domain String
    The domain associated with the entity, if any.
    email String
    The email address associated with the entity, if any.
    entity String
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId String
    The ID for the entity, if any.
    etag String
    HTTP 1.1 Entity tag for the access-control entry.
    generation String
    The content generation of the object, if applied to an object.
    id String
    The ID of the access-control entry.
    kind String
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object String
    The name of the object, if applied to an object.
    projectTeam ObjectAccessControlProjectTeam
    The project team associated with the entity, if any.
    role String
    The access permission for the entity.
    selfLink String
    The link to this access-control entry.
    bucket string
    The name of the bucket.
    domain string
    The domain associated with the entity, if any.
    email string
    The email address associated with the entity, if any.
    entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId string
    The ID for the entity, if any.
    etag string
    HTTP 1.1 Entity tag for the access-control entry.
    generation string
    The content generation of the object, if applied to an object.
    id string
    The ID of the access-control entry.
    kind string
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object string
    The name of the object, if applied to an object.
    projectTeam ObjectAccessControlProjectTeam
    The project team associated with the entity, if any.
    role string
    The access permission for the entity.
    selfLink string
    The link to this access-control entry.
    bucket str
    The name of the bucket.
    domain str
    The domain associated with the entity, if any.
    email str
    The email address associated with the entity, if any.
    entity str
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entity_id str
    The ID for the entity, if any.
    etag str
    HTTP 1.1 Entity tag for the access-control entry.
    generation str
    The content generation of the object, if applied to an object.
    id str
    The ID of the access-control entry.
    kind str
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object str
    The name of the object, if applied to an object.
    project_team ObjectAccessControlProjectTeam
    The project team associated with the entity, if any.
    role str
    The access permission for the entity.
    self_link str
    The link to this access-control entry.
    bucket String
    The name of the bucket.
    domain String
    The domain associated with the entity, if any.
    email String
    The email address associated with the entity, if any.
    entity String
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId String
    The ID for the entity, if any.
    etag String
    HTTP 1.1 Entity tag for the access-control entry.
    generation String
    The content generation of the object, if applied to an object.
    id String
    The ID of the access-control entry.
    kind String
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object String
    The name of the object, if applied to an object.
    projectTeam Property Map
    The project team associated with the entity, if any.
    role String
    The access permission for the entity.
    selfLink String
    The link to this access-control entry.

    ObjectAccessControlProjectTeam, ObjectAccessControlProjectTeamArgs

    ProjectNumber string
    The project number.
    Team string
    The team.
    ProjectNumber string
    The project number.
    Team string
    The team.
    projectNumber String
    The project number.
    team String
    The team.
    projectNumber string
    The project number.
    team string
    The team.
    project_number str
    The project number.
    team str
    The team.
    projectNumber String
    The project number.
    team String
    The team.

    ObjectAccessControlProjectTeamResponse, ObjectAccessControlProjectTeamResponseArgs

    ProjectNumber string
    The project number.
    Team string
    The team.
    ProjectNumber string
    The project number.
    Team string
    The team.
    projectNumber String
    The project number.
    team String
    The team.
    projectNumber string
    The project number.
    team string
    The team.
    project_number str
    The project number.
    team str
    The team.
    projectNumber String
    The project number.
    team String
    The team.

    ObjectAccessControlResponse, ObjectAccessControlResponseArgs

    Bucket string
    The name of the bucket.
    Domain string
    The domain associated with the entity, if any.
    Email string
    The email address associated with the entity, if any.
    Entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    EntityId string
    The ID for the entity, if any.
    Etag string
    HTTP 1.1 Entity tag for the access-control entry.
    Generation string
    The content generation of the object, if applied to an object.
    Kind string
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    Object string
    The name of the object, if applied to an object.
    ProjectTeam Pulumi.GoogleNative.Storage.V1.Inputs.ObjectAccessControlProjectTeamResponse
    The project team associated with the entity, if any.
    Role string
    The access permission for the entity.
    SelfLink string
    The link to this access-control entry.
    Bucket string
    The name of the bucket.
    Domain string
    The domain associated with the entity, if any.
    Email string
    The email address associated with the entity, if any.
    Entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    EntityId string
    The ID for the entity, if any.
    Etag string
    HTTP 1.1 Entity tag for the access-control entry.
    Generation string
    The content generation of the object, if applied to an object.
    Kind string
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    Object string
    The name of the object, if applied to an object.
    ProjectTeam ObjectAccessControlProjectTeamResponse
    The project team associated with the entity, if any.
    Role string
    The access permission for the entity.
    SelfLink string
    The link to this access-control entry.
    bucket String
    The name of the bucket.
    domain String
    The domain associated with the entity, if any.
    email String
    The email address associated with the entity, if any.
    entity String
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId String
    The ID for the entity, if any.
    etag String
    HTTP 1.1 Entity tag for the access-control entry.
    generation String
    The content generation of the object, if applied to an object.
    kind String
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object String
    The name of the object, if applied to an object.
    projectTeam ObjectAccessControlProjectTeamResponse
    The project team associated with the entity, if any.
    role String
    The access permission for the entity.
    selfLink String
    The link to this access-control entry.
    bucket string
    The name of the bucket.
    domain string
    The domain associated with the entity, if any.
    email string
    The email address associated with the entity, if any.
    entity string
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId string
    The ID for the entity, if any.
    etag string
    HTTP 1.1 Entity tag for the access-control entry.
    generation string
    The content generation of the object, if applied to an object.
    kind string
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object string
    The name of the object, if applied to an object.
    projectTeam ObjectAccessControlProjectTeamResponse
    The project team associated with the entity, if any.
    role string
    The access permission for the entity.
    selfLink string
    The link to this access-control entry.
    bucket str
    The name of the bucket.
    domain str
    The domain associated with the entity, if any.
    email str
    The email address associated with the entity, if any.
    entity str
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entity_id str
    The ID for the entity, if any.
    etag str
    HTTP 1.1 Entity tag for the access-control entry.
    generation str
    The content generation of the object, if applied to an object.
    kind str
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object str
    The name of the object, if applied to an object.
    project_team ObjectAccessControlProjectTeamResponse
    The project team associated with the entity, if any.
    role str
    The access permission for the entity.
    self_link str
    The link to this access-control entry.
    bucket String
    The name of the bucket.
    domain String
    The domain associated with the entity, if any.
    email String
    The email address associated with the entity, if any.
    entity String
    The entity holding the permission, in one of the following forms:

    • user-userId
    • user-email
    • group-groupId
    • group-email
    • domain-domain
    • project-team-projectId
    • allUsers
    • allAuthenticatedUsers Examples:
    • The user liz@example.com would be user-liz@example.com.
    • The group example@googlegroups.com would be group-example@googlegroups.com.
    • To refer to all members of the Google Apps for Business domain example.com, the entity would be domain-example.com.
    entityId String
    The ID for the entity, if any.
    etag String
    HTTP 1.1 Entity tag for the access-control entry.
    generation String
    The content generation of the object, if applied to an object.
    kind String
    The kind of item this is. For object access control entries, this is always storage#objectAccessControl.
    object String
    The name of the object, if applied to an object.
    projectTeam Property Map
    The project team associated with the entity, if any.
    role String
    The access permission for the entity.
    selfLink String
    The link to this access-control entry.

    Package Details

    Repository
    Google Cloud Native pulumi/pulumi-google-native
    License
    Apache-2.0
    google-native logo

    Google Cloud Native is in preview. Google Cloud Classic is fully supported.

    Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi