# Models

## The AccessKeyReadList object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"AccessKeyReadList":{"allOf":[{"type":"object","required":["id","type","href"],"properties":{"id":{"description":"ID of the list of AccessKey resources.","type":"string","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["collection"]},"href":{"description":"The URL of the list of AccessKey resources.","type":"string"},"items":{"description":"The list of AccessKey resources.","type":"array","items":{"$ref":"#/components/schemas/AccessKeyRead"}}}},{"$ref":"#/components/schemas/Pagination"}]},"AccessKeyRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The ID (UUID) of the AccessKey.","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["accesskey"]},"href":{"description":"The URL of the AccessKey.","type":"string"},"metadata":{"$ref":"#/components/schemas/MetadataWithSupportedRegions"},"properties":{"$ref":"#/components/schemas/AccessKey"}}},"MetadataWithSupportedRegions":{"allOf":[{"$ref":"#/components/schemas/MetadataWithStatus"},{"type":"object","required":["supportedRegions"],"properties":{"supportedRegions":{"type":"array","items":{"type":"string"},"description":"The list of supported regions.\n"}}}]},"MetadataWithStatus":{"allOf":[{"$ref":"#/components/schemas/Metadata"},{"type":"object","required":["status"],"properties":{"status":{"type":"string","description":"The status of the object. The status can be:\n* `AVAILABLE` - resource exists and is healthy.\n* `PROVISIONING` - resource is being created or updated.\n* `DESTROYING` - delete command was issued, the resource is being deleted.\n* `FAILED` - resource failed, details in `failureMessage`.\n","enum":["PROVISIONING","DESTROYING","AVAILABLE","FAILED"],"readOnly":true},"statusMessage":{"type":"string","description":"The message of the failure if the status is `FAILED`.\n","readOnly":true},"administrative":{"type":"boolean","description":"Indicates if the key is an administrative key. Administrative keys\ncan create buckets and set bucket policies.\n","readOnly":true}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}},"AccessKey":{"type":"object","description":"Per user access key.\n","required":["description","accessKey","secretKey"],"properties":{"description":{"type":"string","description":"Description of the Access key."},"accessKey":{"type":"string","description":"Access key metadata is a string of 92 characters.","readOnly":true},"secretKey":{"type":"string","description":"The secret key of the Access key.","readOnly":true},"canonicalUserId":{"type":"string","readOnly":true,"description":"The canonical user ID which is valid for user-owned buckets."},"contractUserId":{"type":"string","readOnly":true,"description":"The contract user ID which is valid for contract-owned buckets."}}},"Pagination":{"required":["offset","limit","_links"],"description":"Pagination information. The offset and limit parameters are used to\nnavigate the list of elements. The _links object contains URLs to\nnavigate the different pages.\n","type":"object","properties":{"offset":{"$ref":"#/components/schemas/Offset"},"limit":{"$ref":"#/components/schemas/Limit"},"_links":{"$ref":"#/components/schemas/Links"}}},"Offset":{"description":"The offset specified in the request (if none was specified, the default\noffset is 0).\n","type":"integer","minimum":0,"readOnly":true},"Limit":{"description":"The limit specified in the request (if none was specified, use the\nendpoint's default pagination limit).\n","type":"integer","minimum":0,"readOnly":true},"Links":{"description":"URLs to navigate the different pages. As of now we always only return a\nsingle page.\n","type":"object","properties":{"prev":{"description":"URL (with offset and limit parameters) of the previous page; only\npresent if offset is greater than 0.\n","type":"string","format":"uri","readOnly":true},"self":{"description":"URL (with offset and limit parameters) of the current page.\n","type":"string","format":"uri","readOnly":true},"next":{"description":"URL (with offset and limit parameters) of the next page; only\npresent if offset + limit is less than the total number of elements.\n","type":"string","format":"uri","readOnly":true}}}}}}
```

## The AccessKeyRead object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"AccessKeyRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The ID (UUID) of the AccessKey.","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["accesskey"]},"href":{"description":"The URL of the AccessKey.","type":"string"},"metadata":{"$ref":"#/components/schemas/MetadataWithSupportedRegions"},"properties":{"$ref":"#/components/schemas/AccessKey"}}},"MetadataWithSupportedRegions":{"allOf":[{"$ref":"#/components/schemas/MetadataWithStatus"},{"type":"object","required":["supportedRegions"],"properties":{"supportedRegions":{"type":"array","items":{"type":"string"},"description":"The list of supported regions.\n"}}}]},"MetadataWithStatus":{"allOf":[{"$ref":"#/components/schemas/Metadata"},{"type":"object","required":["status"],"properties":{"status":{"type":"string","description":"The status of the object. The status can be:\n* `AVAILABLE` - resource exists and is healthy.\n* `PROVISIONING` - resource is being created or updated.\n* `DESTROYING` - delete command was issued, the resource is being deleted.\n* `FAILED` - resource failed, details in `failureMessage`.\n","enum":["PROVISIONING","DESTROYING","AVAILABLE","FAILED"],"readOnly":true},"statusMessage":{"type":"string","description":"The message of the failure if the status is `FAILED`.\n","readOnly":true},"administrative":{"type":"boolean","description":"Indicates if the key is an administrative key. Administrative keys\ncan create buckets and set bucket policies.\n","readOnly":true}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}},"AccessKey":{"type":"object","description":"Per user access key.\n","required":["description","accessKey","secretKey"],"properties":{"description":{"type":"string","description":"Description of the Access key."},"accessKey":{"type":"string","description":"Access key metadata is a string of 92 characters.","readOnly":true},"secretKey":{"type":"string","description":"The secret key of the Access key.","readOnly":true},"canonicalUserId":{"type":"string","readOnly":true,"description":"The canonical user ID which is valid for user-owned buckets."},"contractUserId":{"type":"string","readOnly":true,"description":"The contract user ID which is valid for contract-owned buckets."}}}}}}
```

## The AccessKeyEnsure object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"AccessKeyEnsure":{"type":"object","required":["id","properties"],"properties":{"id":{"type":"string","description":"The ID (UUID) of the AccessKey.","format":"uuid"},"metadata":{"description":"Metadata","additionalProperties":true},"properties":{"$ref":"#/components/schemas/AccessKey"}}},"AccessKey":{"type":"object","description":"Per user access key.\n","required":["description","accessKey","secretKey"],"properties":{"description":{"type":"string","description":"Description of the Access key."},"accessKey":{"type":"string","description":"Access key metadata is a string of 92 characters.","readOnly":true},"secretKey":{"type":"string","description":"The secret key of the Access key.","readOnly":true},"canonicalUserId":{"type":"string","readOnly":true,"description":"The canonical user ID which is valid for user-owned buckets."},"contractUserId":{"type":"string","readOnly":true,"description":"The contract user ID which is valid for contract-owned buckets."}}}}}}
```

## The AccessKeyCreate object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"AccessKeyCreate":{"type":"object","required":["properties"],"properties":{"metadata":{"description":"Metadata","additionalProperties":true},"properties":{"$ref":"#/components/schemas/AccessKey"}}},"AccessKey":{"type":"object","description":"Per user access key.\n","required":["description","accessKey","secretKey"],"properties":{"description":{"type":"string","description":"Description of the Access key."},"accessKey":{"type":"string","description":"Access key metadata is a string of 92 characters.","readOnly":true},"secretKey":{"type":"string","description":"The secret key of the Access key.","readOnly":true},"canonicalUserId":{"type":"string","readOnly":true,"description":"The canonical user ID which is valid for user-owned buckets."},"contractUserId":{"type":"string","readOnly":true,"description":"The contract user ID which is valid for contract-owned buckets."}}}}}}
```

## The RegionReadList object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"RegionReadList":{"allOf":[{"type":"object","required":["id","type","href"],"properties":{"id":{"description":"ID of the list of Region resources.","type":"string","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["collection"]},"href":{"description":"The URL of the list of Region resources.","type":"string"},"items":{"description":"The list of Region resources.","type":"array","items":{"$ref":"#/components/schemas/RegionRead"}}}},{"$ref":"#/components/schemas/Pagination"}]},"RegionRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The Region of the Region."},"type":{"description":"The type of the resource.","type":"string","enum":["region"]},"href":{"description":"The URL of the Region.","type":"string"},"metadata":{"$ref":"#/components/schemas/NoMetadata"},"properties":{"$ref":"#/components/schemas/Region"}}},"NoMetadata":{"type":"object"},"Region":{"type":"object","description":"IONOS Cloud object storage regions they define the location of the bucket, can also be used as `LocationConstraint` for bucket creation.\n","properties":{"version":{"type":"integer","description":"The version of the region properties"},"endpoint":{"type":"string","description":"The endpoint URL for the region"},"website":{"type":"string","description":"The website URL for the region"},"capability":{"type":"object","description":"The capabilities of the region","properties":{"iam":{"type":"boolean","description":"Indicates if IAM policy based access is supported"},"s3select":{"type":"boolean","description":"Indicates if S3 Select is supported"}}},"storageClasses":{"type":"array","description":"The available classes in the region","items":{"type":"string"}},"location":{"type":"string","description":"The data center location of the region as per [Get Location](/docs/cloud/v6/#tag/Locations/operation/locationsGet).\n*Can't be used as `LocationConstraint` on bucket creation.*\n"},"bucketOwnership":{"type":"string","description":"Indicates whether a region supports user-owned or contract-owned buckets.","enum":["user-owned","contract-owned"]}},"required":["version","endpoint","website","capability","location"]},"Pagination":{"required":["offset","limit","_links"],"description":"Pagination information. The offset and limit parameters are used to\nnavigate the list of elements. The _links object contains URLs to\nnavigate the different pages.\n","type":"object","properties":{"offset":{"$ref":"#/components/schemas/Offset"},"limit":{"$ref":"#/components/schemas/Limit"},"_links":{"$ref":"#/components/schemas/Links"}}},"Offset":{"description":"The offset specified in the request (if none was specified, the default\noffset is 0).\n","type":"integer","minimum":0,"readOnly":true},"Limit":{"description":"The limit specified in the request (if none was specified, use the\nendpoint's default pagination limit).\n","type":"integer","minimum":0,"readOnly":true},"Links":{"description":"URLs to navigate the different pages. As of now we always only return a\nsingle page.\n","type":"object","properties":{"prev":{"description":"URL (with offset and limit parameters) of the previous page; only\npresent if offset is greater than 0.\n","type":"string","format":"uri","readOnly":true},"self":{"description":"URL (with offset and limit parameters) of the current page.\n","type":"string","format":"uri","readOnly":true},"next":{"description":"URL (with offset and limit parameters) of the next page; only\npresent if offset + limit is less than the total number of elements.\n","type":"string","format":"uri","readOnly":true}}}}}}
```

## The RegionRead object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"RegionRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The Region of the Region."},"type":{"description":"The type of the resource.","type":"string","enum":["region"]},"href":{"description":"The URL of the Region.","type":"string"},"metadata":{"$ref":"#/components/schemas/NoMetadata"},"properties":{"$ref":"#/components/schemas/Region"}}},"NoMetadata":{"type":"object"},"Region":{"type":"object","description":"IONOS Cloud object storage regions they define the location of the bucket, can also be used as `LocationConstraint` for bucket creation.\n","properties":{"version":{"type":"integer","description":"The version of the region properties"},"endpoint":{"type":"string","description":"The endpoint URL for the region"},"website":{"type":"string","description":"The website URL for the region"},"capability":{"type":"object","description":"The capabilities of the region","properties":{"iam":{"type":"boolean","description":"Indicates if IAM policy based access is supported"},"s3select":{"type":"boolean","description":"Indicates if S3 Select is supported"}}},"storageClasses":{"type":"array","description":"The available classes in the region","items":{"type":"string"}},"location":{"type":"string","description":"The data center location of the region as per [Get Location](/docs/cloud/v6/#tag/Locations/operation/locationsGet).\n*Can't be used as `LocationConstraint` on bucket creation.*\n"},"bucketOwnership":{"type":"string","description":"Indicates whether a region supports user-owned or contract-owned buckets.","enum":["user-owned","contract-owned"]}},"required":["version","endpoint","website","capability","location"]}}}}
```

## The RegionEnsure object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"RegionEnsure":{"type":"object","required":["id","properties"],"properties":{"id":{"type":"string","description":"The Region of the Region."},"metadata":{"description":"Metadata","additionalProperties":true},"properties":{"$ref":"#/components/schemas/Region"}}},"Region":{"type":"object","description":"IONOS Cloud object storage regions they define the location of the bucket, can also be used as `LocationConstraint` for bucket creation.\n","properties":{"version":{"type":"integer","description":"The version of the region properties"},"endpoint":{"type":"string","description":"The endpoint URL for the region"},"website":{"type":"string","description":"The website URL for the region"},"capability":{"type":"object","description":"The capabilities of the region","properties":{"iam":{"type":"boolean","description":"Indicates if IAM policy based access is supported"},"s3select":{"type":"boolean","description":"Indicates if S3 Select is supported"}}},"storageClasses":{"type":"array","description":"The available classes in the region","items":{"type":"string"}},"location":{"type":"string","description":"The data center location of the region as per [Get Location](/docs/cloud/v6/#tag/Locations/operation/locationsGet).\n*Can't be used as `LocationConstraint` on bucket creation.*\n"},"bucketOwnership":{"type":"string","description":"Indicates whether a region supports user-owned or contract-owned buckets.","enum":["user-owned","contract-owned"]}},"required":["version","endpoint","website","capability","location"]}}}}
```

## The RegionCreate object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"RegionCreate":{"type":"object","required":["properties"],"properties":{"metadata":{"description":"Metadata","additionalProperties":true},"properties":{"$ref":"#/components/schemas/Region"}}},"Region":{"type":"object","description":"IONOS Cloud object storage regions they define the location of the bucket, can also be used as `LocationConstraint` for bucket creation.\n","properties":{"version":{"type":"integer","description":"The version of the region properties"},"endpoint":{"type":"string","description":"The endpoint URL for the region"},"website":{"type":"string","description":"The website URL for the region"},"capability":{"type":"object","description":"The capabilities of the region","properties":{"iam":{"type":"boolean","description":"Indicates if IAM policy based access is supported"},"s3select":{"type":"boolean","description":"Indicates if S3 Select is supported"}}},"storageClasses":{"type":"array","description":"The available classes in the region","items":{"type":"string"}},"location":{"type":"string","description":"The data center location of the region as per [Get Location](/docs/cloud/v6/#tag/Locations/operation/locationsGet).\n*Can't be used as `LocationConstraint` on bucket creation.*\n"},"bucketOwnership":{"type":"string","description":"Indicates whether a region supports user-owned or contract-owned buckets.","enum":["user-owned","contract-owned"]}},"required":["version","endpoint","website","capability","location"]}}}}
```

## The BucketReadList object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"BucketReadList":{"allOf":[{"type":"object","required":["id","type","href"],"properties":{"id":{"description":"ID of the list of Bucket resources.","type":"string","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["collection"]},"href":{"description":"The URL of the list of Bucket resources.","type":"string"},"items":{"description":"The list of Bucket resources.","type":"array","items":{"$ref":"#/components/schemas/BucketRead"}}}},{"$ref":"#/components/schemas/Pagination"}]},"BucketRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The Bucket of the Bucket."},"type":{"description":"The type of the resource.","type":"string","enum":["bucket"]},"href":{"description":"The URL of the Bucket.","type":"string"},"metadata":{"$ref":"#/components/schemas/NoMetadata"},"properties":{"$ref":"#/components/schemas/Bucket"}}},"NoMetadata":{"type":"object"},"Bucket":{"type":"object","description":"Buckets visible to the user.\n","properties":{"region":{"type":"string","description":"The region where the bucket is located"},"website":{"type":"string","description":"The website URL for the bucket"}},"required":["region","website"]},"Pagination":{"required":["offset","limit","_links"],"description":"Pagination information. The offset and limit parameters are used to\nnavigate the list of elements. The _links object contains URLs to\nnavigate the different pages.\n","type":"object","properties":{"offset":{"$ref":"#/components/schemas/Offset"},"limit":{"$ref":"#/components/schemas/Limit"},"_links":{"$ref":"#/components/schemas/Links"}}},"Offset":{"description":"The offset specified in the request (if none was specified, the default\noffset is 0).\n","type":"integer","minimum":0,"readOnly":true},"Limit":{"description":"The limit specified in the request (if none was specified, use the\nendpoint's default pagination limit).\n","type":"integer","minimum":0,"readOnly":true},"Links":{"description":"URLs to navigate the different pages. As of now we always only return a\nsingle page.\n","type":"object","properties":{"prev":{"description":"URL (with offset and limit parameters) of the previous page; only\npresent if offset is greater than 0.\n","type":"string","format":"uri","readOnly":true},"self":{"description":"URL (with offset and limit parameters) of the current page.\n","type":"string","format":"uri","readOnly":true},"next":{"description":"URL (with offset and limit parameters) of the next page; only\npresent if offset + limit is less than the total number of elements.\n","type":"string","format":"uri","readOnly":true}}}}}}
```

## The BucketRead object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"BucketRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The Bucket of the Bucket."},"type":{"description":"The type of the resource.","type":"string","enum":["bucket"]},"href":{"description":"The URL of the Bucket.","type":"string"},"metadata":{"$ref":"#/components/schemas/NoMetadata"},"properties":{"$ref":"#/components/schemas/Bucket"}}},"NoMetadata":{"type":"object"},"Bucket":{"type":"object","description":"Buckets visible to the user.\n","properties":{"region":{"type":"string","description":"The region where the bucket is located"},"website":{"type":"string","description":"The website URL for the bucket"}},"required":["region","website"]}}}}
```

## The BucketEnsure object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"BucketEnsure":{"type":"object","required":["id","properties"],"properties":{"id":{"type":"string","description":"The Bucket of the Bucket."},"metadata":{"description":"Metadata","additionalProperties":true},"properties":{"$ref":"#/components/schemas/Bucket"}}},"Bucket":{"type":"object","description":"Buckets visible to the user.\n","properties":{"region":{"type":"string","description":"The region where the bucket is located"},"website":{"type":"string","description":"The website URL for the bucket"}},"required":["region","website"]}}}}
```

## The BucketCreate object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"BucketCreate":{"type":"object","required":["properties"],"properties":{"metadata":{"description":"Metadata","additionalProperties":true},"properties":{"$ref":"#/components/schemas/Bucket"}}},"Bucket":{"type":"object","description":"Buckets visible to the user.\n","properties":{"region":{"type":"string","description":"The region where the bucket is located"},"website":{"type":"string","description":"The website URL for the bucket"}},"required":["region","website"]}}}}
```

## The StorageClassReadList object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"StorageClassReadList":{"allOf":[{"type":"object","required":["id","type","href"],"properties":{"id":{"description":"ID of the list of StorageClass resources.","type":"string","format":"uuid"},"type":{"description":"The type of the resource.","type":"string","enum":["collection"]},"href":{"description":"The URL of the list of StorageClass resources.","type":"string"},"items":{"description":"The list of StorageClass resources.","type":"array","items":{"$ref":"#/components/schemas/StorageClassRead"}}}},{"$ref":"#/components/schemas/Pagination"}]},"StorageClassRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The StorageClass of the StorageClass."},"type":{"description":"The type of the resource.","type":"string","enum":["storageclass"]},"href":{"description":"The URL of the StorageClass.","type":"string"},"metadata":{"$ref":"#/components/schemas/NoMetadata"},"properties":{"$ref":"#/components/schemas/StorageClass"}}},"NoMetadata":{"type":"object"},"StorageClass":{"type":"object","description":"Details the cross functional aspects of the given storage class.\n","properties":{"description":{"type":"string","description":"Explains the motivation for the storage class"},"durability":{"type":"string","description":"The durability of the storage class"},"availability":{"type":"string","description":"The availability of the storage class"}},"required":["description","durability","availability"]},"Pagination":{"required":["offset","limit","_links"],"description":"Pagination information. The offset and limit parameters are used to\nnavigate the list of elements. The _links object contains URLs to\nnavigate the different pages.\n","type":"object","properties":{"offset":{"$ref":"#/components/schemas/Offset"},"limit":{"$ref":"#/components/schemas/Limit"},"_links":{"$ref":"#/components/schemas/Links"}}},"Offset":{"description":"The offset specified in the request (if none was specified, the default\noffset is 0).\n","type":"integer","minimum":0,"readOnly":true},"Limit":{"description":"The limit specified in the request (if none was specified, use the\nendpoint's default pagination limit).\n","type":"integer","minimum":0,"readOnly":true},"Links":{"description":"URLs to navigate the different pages. As of now we always only return a\nsingle page.\n","type":"object","properties":{"prev":{"description":"URL (with offset and limit parameters) of the previous page; only\npresent if offset is greater than 0.\n","type":"string","format":"uri","readOnly":true},"self":{"description":"URL (with offset and limit parameters) of the current page.\n","type":"string","format":"uri","readOnly":true},"next":{"description":"URL (with offset and limit parameters) of the next page; only\npresent if offset + limit is less than the total number of elements.\n","type":"string","format":"uri","readOnly":true}}}}}}
```

## The StorageClassRead object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"StorageClassRead":{"type":"object","required":["id","type","href","metadata","properties"],"properties":{"id":{"type":"string","description":"The StorageClass of the StorageClass."},"type":{"description":"The type of the resource.","type":"string","enum":["storageclass"]},"href":{"description":"The URL of the StorageClass.","type":"string"},"metadata":{"$ref":"#/components/schemas/NoMetadata"},"properties":{"$ref":"#/components/schemas/StorageClass"}}},"NoMetadata":{"type":"object"},"StorageClass":{"type":"object","description":"Details the cross functional aspects of the given storage class.\n","properties":{"description":{"type":"string","description":"Explains the motivation for the storage class"},"durability":{"type":"string","description":"The durability of the storage class"},"availability":{"type":"string","description":"The availability of the storage class"}},"required":["description","durability","availability"]}}}}
```

## The StorageClassEnsure object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"StorageClassEnsure":{"type":"object","required":["id","properties"],"properties":{"id":{"type":"string","description":"The StorageClass of the StorageClass."},"metadata":{"description":"Metadata","additionalProperties":true},"properties":{"$ref":"#/components/schemas/StorageClass"}}},"StorageClass":{"type":"object","description":"Details the cross functional aspects of the given storage class.\n","properties":{"description":{"type":"string","description":"Explains the motivation for the storage class"},"durability":{"type":"string","description":"The durability of the storage class"},"availability":{"type":"string","description":"The availability of the storage class"}},"required":["description","durability","availability"]}}}}
```

## The StorageClassCreate object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"StorageClassCreate":{"type":"object","required":["properties"],"properties":{"metadata":{"description":"Metadata","additionalProperties":true},"properties":{"$ref":"#/components/schemas/StorageClass"}}},"StorageClass":{"type":"object","description":"Details the cross functional aspects of the given storage class.\n","properties":{"description":{"type":"string","description":"Explains the motivation for the storage class"},"durability":{"type":"string","description":"The durability of the storage class"},"availability":{"type":"string","description":"The availability of the storage class"}},"required":["description","durability","availability"]}}}}
```

## The AccessKey object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"AccessKey":{"type":"object","description":"Per user access key.\n","required":["description","accessKey","secretKey"],"properties":{"description":{"type":"string","description":"Description of the Access key."},"accessKey":{"type":"string","description":"Access key metadata is a string of 92 characters.","readOnly":true},"secretKey":{"type":"string","description":"The secret key of the Access key.","readOnly":true},"canonicalUserId":{"type":"string","readOnly":true,"description":"The canonical user ID which is valid for user-owned buckets."},"contractUserId":{"type":"string","readOnly":true,"description":"The contract user ID which is valid for contract-owned buckets."}}}}}}
```

## The Region object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"Region":{"type":"object","description":"IONOS Cloud object storage regions they define the location of the bucket, can also be used as `LocationConstraint` for bucket creation.\n","properties":{"version":{"type":"integer","description":"The version of the region properties"},"endpoint":{"type":"string","description":"The endpoint URL for the region"},"website":{"type":"string","description":"The website URL for the region"},"capability":{"type":"object","description":"The capabilities of the region","properties":{"iam":{"type":"boolean","description":"Indicates if IAM policy based access is supported"},"s3select":{"type":"boolean","description":"Indicates if S3 Select is supported"}}},"storageClasses":{"type":"array","description":"The available classes in the region","items":{"type":"string"}},"location":{"type":"string","description":"The data center location of the region as per [Get Location](/docs/cloud/v6/#tag/Locations/operation/locationsGet).\n*Can't be used as `LocationConstraint` on bucket creation.*\n"},"bucketOwnership":{"type":"string","description":"Indicates whether a region supports user-owned or contract-owned buckets.","enum":["user-owned","contract-owned"]}},"required":["version","endpoint","website","capability","location"]}}}}
```

## The Bucket object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"Bucket":{"type":"object","description":"Buckets visible to the user.\n","properties":{"region":{"type":"string","description":"The region where the bucket is located"},"website":{"type":"string","description":"The website URL for the bucket"}},"required":["region","website"]}}}}
```

## The StorageClass object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"StorageClass":{"type":"object","description":"Details the cross functional aspects of the given storage class.\n","properties":{"description":{"type":"string","description":"Explains the motivation for the storage class"},"durability":{"type":"string","description":"The durability of the storage class"},"availability":{"type":"string","description":"The availability of the storage class"}},"required":["description","durability","availability"]}}}}
```

## The NoMetadata object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"NoMetadata":{"type":"object"}}}}
```

## The MetadataWithStatus object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"MetadataWithStatus":{"allOf":[{"$ref":"#/components/schemas/Metadata"},{"type":"object","required":["status"],"properties":{"status":{"type":"string","description":"The status of the object. The status can be:\n* `AVAILABLE` - resource exists and is healthy.\n* `PROVISIONING` - resource is being created or updated.\n* `DESTROYING` - delete command was issued, the resource is being deleted.\n* `FAILED` - resource failed, details in `failureMessage`.\n","enum":["PROVISIONING","DESTROYING","AVAILABLE","FAILED"],"readOnly":true},"statusMessage":{"type":"string","description":"The message of the failure if the status is `FAILED`.\n","readOnly":true},"administrative":{"type":"boolean","description":"Indicates if the key is an administrative key. Administrative keys\ncan create buckets and set bucket policies.\n","readOnly":true}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}}}}}
```

## The MetadataWithSupportedRegions object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"MetadataWithSupportedRegions":{"allOf":[{"$ref":"#/components/schemas/MetadataWithStatus"},{"type":"object","required":["supportedRegions"],"properties":{"supportedRegions":{"type":"array","items":{"type":"string"},"description":"The list of supported regions.\n"}}}]},"MetadataWithStatus":{"allOf":[{"$ref":"#/components/schemas/Metadata"},{"type":"object","required":["status"],"properties":{"status":{"type":"string","description":"The status of the object. The status can be:\n* `AVAILABLE` - resource exists and is healthy.\n* `PROVISIONING` - resource is being created or updated.\n* `DESTROYING` - delete command was issued, the resource is being deleted.\n* `FAILED` - resource failed, details in `failureMessage`.\n","enum":["PROVISIONING","DESTROYING","AVAILABLE","FAILED"],"readOnly":true},"statusMessage":{"type":"string","description":"The message of the failure if the status is `FAILED`.\n","readOnly":true},"administrative":{"type":"boolean","description":"Indicates if the key is an administrative key. Administrative keys\ncan create buckets and set bucket policies.\n","readOnly":true}}}]},"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}}}}}
```

## The Error object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"Error":{"description":"The Error object is used to represent an error response from the API.\n","type":"object","properties":{"httpStatus":{"type":"integer","description":"The HTTP status code of the operation."},"messages":{"type":"array","description":"A list of error messages.\n","items":{"type":"object","properties":{"errorCode":{"type":"string","description":"Application internal error code\n"},"message":{"type":"string","description":"A human readable explanation specific to this occurrence of the\nproblem.\n"}}}}}}}}}
```

## The Metadata object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"Metadata":{"type":"object","description":"Metadata of the resource.","properties":{"createdDate":{"type":"string","format":"date-time","description":"The ISO 8601 creation timestamp.","readOnly":true},"createdBy":{"type":"string","description":"Unique name of the identity that created the resource.","readOnly":true},"createdByUserId":{"type":"string","description":"Unique id of the identity that created the resource.","readOnly":true},"lastModifiedDate":{"type":"string","format":"date-time","description":"The ISO 8601 modified timestamp.","readOnly":true},"lastModifiedBy":{"type":"string","description":"Unique name of the identity that last modified the resource.","readOnly":true},"lastModifiedByUserId":{"type":"string","description":"Unique id of the identity that last modified the resource.","readOnly":true},"resourceURN":{"type":"string","description":"Unique name of the resource.","readOnly":true}}}}}}
```

## The Pagination object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"Pagination":{"required":["offset","limit","_links"],"description":"Pagination information. The offset and limit parameters are used to\nnavigate the list of elements. The _links object contains URLs to\nnavigate the different pages.\n","type":"object","properties":{"offset":{"$ref":"#/components/schemas/Offset"},"limit":{"$ref":"#/components/schemas/Limit"},"_links":{"$ref":"#/components/schemas/Links"}}},"Offset":{"description":"The offset specified in the request (if none was specified, the default\noffset is 0).\n","type":"integer","minimum":0,"readOnly":true},"Limit":{"description":"The limit specified in the request (if none was specified, use the\nendpoint's default pagination limit).\n","type":"integer","minimum":0,"readOnly":true},"Links":{"description":"URLs to navigate the different pages. As of now we always only return a\nsingle page.\n","type":"object","properties":{"prev":{"description":"URL (with offset and limit parameters) of the previous page; only\npresent if offset is greater than 0.\n","type":"string","format":"uri","readOnly":true},"self":{"description":"URL (with offset and limit parameters) of the current page.\n","type":"string","format":"uri","readOnly":true},"next":{"description":"URL (with offset and limit parameters) of the next page; only\npresent if offset + limit is less than the total number of elements.\n","type":"string","format":"uri","readOnly":true}}}}}}
```

## The Offset object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"Offset":{"description":"The offset specified in the request (if none was specified, the default\noffset is 0).\n","type":"integer","minimum":0,"readOnly":true}}}}
```

## The Limit object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"Limit":{"description":"The limit specified in the request (if none was specified, use the\nendpoint's default pagination limit).\n","type":"integer","minimum":0,"readOnly":true}}}}
```

## The Links object

```json
{"openapi":"3.0.3","info":{"title":"IONOS Cloud - Object Storage Management API","version":"0.1.0"},"components":{"schemas":{"Links":{"description":"URLs to navigate the different pages. As of now we always only return a\nsingle page.\n","type":"object","properties":{"prev":{"description":"URL (with offset and limit parameters) of the previous page; only\npresent if offset is greater than 0.\n","type":"string","format":"uri","readOnly":true},"self":{"description":"URL (with offset and limit parameters) of the current page.\n","type":"string","format":"uri","readOnly":true},"next":{"description":"URL (with offset and limit parameters) of the next page; only\npresent if offset + limit is less than the total number of elements.\n","type":"string","format":"uri","readOnly":true}}}}}}
```
