published on Wednesday, Apr 15, 2026 by ionos-cloud
published on Wednesday, Apr 15, 2026 by ionos-cloud
Manages IONOS Object Storage Buckets on IonosCloud.
⚠️ Note: The Terraform provider only supports contract-owned buckets. User-owned buckets are not supported, and there are no plans to introduce support for them. As a result, user-owned buckets cannot be created, updated, deleted, read, or imported using this provider.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as ionoscloud from "@ionos-cloud/sdk-pulumi";
const example = new ionoscloud.objectstorage.Bucket("example", {
name: "example",
region: "eu-central-3",
objectLockEnabled: true,
forceDestroy: true,
tags: {
key1: "value1",
key2: "value2",
},
});
import pulumi
import pulumi_ionoscloud as ionoscloud
example = ionoscloud.objectstorage.Bucket("example",
name="example",
region="eu-central-3",
object_lock_enabled=True,
force_destroy=True,
tags={
"key1": "value1",
"key2": "value2",
})
package main
import (
"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/objectstorage"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := objectstorage.NewBucket(ctx, "example", &objectstorage.BucketArgs{
Name: pulumi.String("example"),
Region: pulumi.String("eu-central-3"),
ObjectLockEnabled: pulumi.Bool(true),
ForceDestroy: pulumi.Bool(true),
Tags: pulumi.StringMap{
"key1": pulumi.String("value1"),
"key2": pulumi.String("value2"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Ionoscloud = Ionoscloud.Pulumi.Ionoscloud;
return await Deployment.RunAsync(() =>
{
var example = new Ionoscloud.Objectstorage.Bucket("example", new()
{
Name = "example",
Region = "eu-central-3",
ObjectLockEnabled = true,
ForceDestroy = true,
Tags =
{
{ "key1", "value1" },
{ "key2", "value2" },
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.ionoscloud.pulumi.ionoscloud.objectstorage.Bucket;
import com.ionoscloud.pulumi.ionoscloud.objectstorage.BucketArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new Bucket("example", BucketArgs.builder()
.name("example")
.region("eu-central-3")
.objectLockEnabled(true)
.forceDestroy(true)
.tags(Map.ofEntries(
Map.entry("key1", "value1"),
Map.entry("key2", "value2")
))
.build());
}
}
resources:
example:
type: ionoscloud:objectstorage:Bucket
properties:
name: example
region: eu-central-3
objectLockEnabled: true
forceDestroy: true
tags:
key1: value1
key2: value2
Example coming soon!
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,
force_destroy: Optional[bool] = None,
name: Optional[str] = None,
object_lock_enabled: Optional[bool] = None,
region: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
timeouts: Optional[BucketTimeoutsArgs] = 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: ionoscloud:objectstorage:Bucket
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "ionoscloud_objectstorage_bucket" "name" {
# resource properties
}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 bucketResource = new Ionoscloud.Objectstorage.Bucket("bucketResource", new()
{
ForceDestroy = false,
Name = "string",
ObjectLockEnabled = false,
Region = "string",
Tags =
{
{ "string", "string" },
},
Timeouts = new Ionoscloud.Objectstorage.Inputs.BucketTimeoutsArgs
{
Create = "string",
Delete = "string",
Read = "string",
Update = "string",
},
});
example, err := objectstorage.NewBucket(ctx, "bucketResource", &objectstorage.BucketArgs{
ForceDestroy: pulumi.Bool(false),
Name: pulumi.String("string"),
ObjectLockEnabled: pulumi.Bool(false),
Region: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
Timeouts: &objectstorage.BucketTimeoutsArgs{
Create: pulumi.String("string"),
Delete: pulumi.String("string"),
Read: pulumi.String("string"),
Update: pulumi.String("string"),
},
})
resource "ionoscloud_objectstorage_bucket" "bucketResource" {
force_destroy = false
name = "string"
object_lock_enabled = false
region = "string"
tags = {
"string" = "string"
}
timeouts = {
create = "string"
delete = "string"
read = "string"
update = "string"
}
}
var bucketResource = new Bucket("bucketResource", BucketArgs.builder()
.forceDestroy(false)
.name("string")
.objectLockEnabled(false)
.region("string")
.tags(Map.of("string", "string"))
.timeouts(BucketTimeoutsArgs.builder()
.create("string")
.delete("string")
.read("string")
.update("string")
.build())
.build());
bucket_resource = ionoscloud.objectstorage.Bucket("bucketResource",
force_destroy=False,
name="string",
object_lock_enabled=False,
region="string",
tags={
"string": "string",
},
timeouts={
"create": "string",
"delete": "string",
"read": "string",
"update": "string",
})
const bucketResource = new ionoscloud.objectstorage.Bucket("bucketResource", {
forceDestroy: false,
name: "string",
objectLockEnabled: false,
region: "string",
tags: {
string: "string",
},
timeouts: {
create: "string",
"delete": "string",
read: "string",
update: "string",
},
});
type: ionoscloud:objectstorage:Bucket
properties:
forceDestroy: false
name: string
objectLockEnabled: false
region: string
tags:
string: string
timeouts:
create: string
delete: string
read: string
update: 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
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Bucket resource accepts the following input properties:
- Force
Destroy bool - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - Name string
- [string] The bucket name. [ 3 .. 63 ] characters
- Object
Lock boolEnabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - Region string
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - Dictionary<string, string>
- A mapping of tags to assign to the bucket.
- Timeouts
Ionoscloud.
Bucket Timeouts - Timeouts for this resource.
- Force
Destroy bool - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - Name string
- [string] The bucket name. [ 3 .. 63 ] characters
- Object
Lock boolEnabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - Region string
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - map[string]string
- A mapping of tags to assign to the bucket.
- Timeouts
Bucket
Timeouts Args - Timeouts for this resource.
- force_
destroy bool - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - name string
- [string] The bucket name. [ 3 .. 63 ] characters
- object_
lock_ boolenabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - region string
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - map(string)
- A mapping of tags to assign to the bucket.
- timeouts object
- Timeouts for this resource.
- force
Destroy Boolean - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - name String
- [string] The bucket name. [ 3 .. 63 ] characters
- object
Lock BooleanEnabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - region String
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - Map<String,String>
- A mapping of tags to assign to the bucket.
- timeouts
Bucket
Timeouts - Timeouts for this resource.
- force
Destroy boolean - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - name string
- [string] The bucket name. [ 3 .. 63 ] characters
- object
Lock booleanEnabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - region string
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - {[key: string]: string}
- A mapping of tags to assign to the bucket.
- timeouts
Bucket
Timeouts - Timeouts for this resource.
- force_
destroy bool - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - name str
- [string] The bucket name. [ 3 .. 63 ] characters
- object_
lock_ boolenabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - region str
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - Mapping[str, str]
- A mapping of tags to assign to the bucket.
- timeouts
Bucket
Timeouts Args - Timeouts for this resource.
- force
Destroy Boolean - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - name String
- [string] The bucket name. [ 3 .. 63 ] characters
- object
Lock BooleanEnabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - region String
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - Map<String>
- A mapping of tags to assign to the bucket.
- timeouts Property Map
- Timeouts for this resource.
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 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.
Look up Existing Bucket Resource
Get an existing Bucket resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: BucketState, opts?: CustomResourceOptions): Bucket@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
force_destroy: Optional[bool] = None,
name: Optional[str] = None,
object_lock_enabled: Optional[bool] = None,
region: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
timeouts: Optional[BucketTimeoutsArgs] = None) -> Bucketfunc GetBucket(ctx *Context, name string, id IDInput, state *BucketState, opts ...ResourceOption) (*Bucket, error)public static Bucket Get(string name, Input<string> id, BucketState? state, CustomResourceOptions? opts = null)public static Bucket get(String name, Output<String> id, BucketState state, CustomResourceOptions options)resources: _: type: ionoscloud:objectstorage:Bucket get: id: ${id}import {
to = ionoscloud_objectstorage_bucket.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Force
Destroy bool - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - Name string
- [string] The bucket name. [ 3 .. 63 ] characters
- Object
Lock boolEnabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - Region string
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - Dictionary<string, string>
- A mapping of tags to assign to the bucket.
- Timeouts
Ionoscloud.
Bucket Timeouts - Timeouts for this resource.
- Force
Destroy bool - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - Name string
- [string] The bucket name. [ 3 .. 63 ] characters
- Object
Lock boolEnabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - Region string
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - map[string]string
- A mapping of tags to assign to the bucket.
- Timeouts
Bucket
Timeouts Args - Timeouts for this resource.
- force_
destroy bool - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - name string
- [string] The bucket name. [ 3 .. 63 ] characters
- object_
lock_ boolenabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - region string
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - map(string)
- A mapping of tags to assign to the bucket.
- timeouts object
- Timeouts for this resource.
- force
Destroy Boolean - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - name String
- [string] The bucket name. [ 3 .. 63 ] characters
- object
Lock BooleanEnabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - region String
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - Map<String,String>
- A mapping of tags to assign to the bucket.
- timeouts
Bucket
Timeouts - Timeouts for this resource.
- force
Destroy boolean - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - name string
- [string] The bucket name. [ 3 .. 63 ] characters
- object
Lock booleanEnabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - region string
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - {[key: string]: string}
- A mapping of tags to assign to the bucket.
- timeouts
Bucket
Timeouts - Timeouts for this resource.
- force_
destroy bool - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - name str
- [string] The bucket name. [ 3 .. 63 ] characters
- object_
lock_ boolenabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - region str
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - Mapping[str, str]
- A mapping of tags to assign to the bucket.
- timeouts
Bucket
Timeouts Args - Timeouts for this resource.
- force
Destroy Boolean - [bool] Default is
false.By setting forceDestroy to true, you instruct Terraform to delete the bucket and all its contents during the terraform destroy process. This is particularly useful when dealing with buckets that contain objects, as it allows for automatic cleanup without requiring the manual deletion of objects beforehand. If forceDestroy is not set or is set to false, Terraform will refuse to delete a bucket that still contains objects. You must manually empty the bucket before Terraform can remove it.There is a significant risk of accidental data loss when using this attribute, as it irreversibly deletes all contents of the bucket. It's crucial to ensure that the bucket does not contain critical data before using force_destroy. - name String
- [string] The bucket name. [ 3 .. 63 ] characters
- object
Lock BooleanEnabled - [bool] The object lock configuration status of the bucket. Must be
trueorfalse. - region String
- [string] Specifies the Region where the bucket will be created. Available regions are:
eu-central-3,eu-central-4,us-central-1. Can be used only if the region is the same as the global region (set usingIONOS_S3_REGIONenv var ors3Regionprovider attribute) or if the global region is unset. For using multiple different regions, please check theWorking with multiple regions/locationssection presented here. - Map<String>
- A mapping of tags to assign to the bucket.
- timeouts Property Map
- Timeouts for this resource.
Supporting Types
BucketTimeouts, BucketTimeoutsArgs
- Create string
- [string] Time to wait for the bucket to be created. Default is
10m. - Delete string
- [string] Time to wait for the bucket to be deleted. Default is
10m. - Read string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- Update string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
- Create string
- [string] Time to wait for the bucket to be created. Default is
10m. - Delete string
- [string] Time to wait for the bucket to be deleted. Default is
10m. - Read string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- Update string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
- create string
- [string] Time to wait for the bucket to be created. Default is
10m. - delete string
- [string] Time to wait for the bucket to be deleted. Default is
10m. - read string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- update string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
- create String
- [string] Time to wait for the bucket to be created. Default is
10m. - delete String
- [string] Time to wait for the bucket to be deleted. Default is
10m. - read String
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- update String
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
- create string
- [string] Time to wait for the bucket to be created. Default is
10m. - delete string
- [string] Time to wait for the bucket to be deleted. Default is
10m. - read string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- update string
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
- create str
- [string] Time to wait for the bucket to be created. Default is
10m. - delete str
- [string] Time to wait for the bucket to be deleted. Default is
10m. - read str
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- update str
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
- create String
- [string] Time to wait for the bucket to be created. Default is
10m. - delete String
- [string] Time to wait for the bucket to be deleted. Default is
10m. - read String
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
- update String
- A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
Import
A bucket can be imported using the bucket name and the region:
$ pulumi import ionoscloud:objectstorage/bucket:Bucket example region:bucket_name
The region can be omitted, in which case the bucket will be imported from the default location: eu-central-3.
$ pulumi import ionoscloud:objectstorage/bucket:Bucket example bucket_name
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- ionoscloud ionos-cloud/pulumi-ionoscloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
ionoscloudTerraform Provider.
published on Wednesday, Apr 15, 2026 by ionos-cloud
