IBM Cloud Object Storage S3 API

Introduction The IBM Cloud® Object Storage API is a REST-based API for reading and writing objects. It uses IBM Cloud® Identity and Access Management for authentication/authorization, and supports a subset of the S3 API for easy migration of applications to IBM Cloud. For details about using Object Storage, see the IBM Cloud docshttps://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-getting-started-cloud-object-storage. Object Storage is a global service. The location of data is determined by the region where a bucket is created, and subsequent requests to that bucket must be sent to the same corresponding endpoint. The examples shown here assume that requests are sent to the US South region. For more details about selecting endpoints Object Storage, see the IBM Cloud docshttps://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-endpointsendpoints-region. Java developers can use this SDK to interact with Object Storage. The SDK is a fork of the official AWS SDK for Javahttps://github.com/aws/aws-sdk-java. For more information, see the COS SDK for Java API Referencehttps://ibm.github.io/ibm-cos-sdk-java/. The code examples on this tab use the client library that is provided for Java. Maven xml

MethodPathSummary
GET/List buckets in a service instance
PUT/{Bucket}Create a new bucket
DELETE/{Bucket}Delete a bucket
HEAD/{Bucket}Read a bucket's headers
GET/{Bucket}List objects in a bucket (v1)
GET/{Bucket}?list-type=2List objects in a bucket (v2)
GET/{Bucket}?list-object=versionsList object versions
PUT/{Bucket}/{Key}Create (upload) an object
GET/{Bucket}/{Key}Read (download) an object
HEAD/{Bucket}/{Key}Read object metadata
DELETE/{Bucket}/{Key}Delete an object
PUT/{Bucket}/{TargetKey}Copy an object
POST/{Bucket}?deleteDelete multiple objects
POST/{Bucket}/{Key}?uploadsInitiate a multipart upload
POST/{Bucket}/{Key}?uploadId={uploadId}Complete a multipart upload
GET/{Bucket}/{Key}?uploadId={uploadId}List parts of a multipart upload
DELETE/{Bucket}/{Key}?uploadId={uploadId}Abort a multipart upload
GET/{Bucket}?uploadsList active multipart uploads
PUT/{Bucket}/{Key}?partNumber={partNumber}&uploadId={uploadId}Upload a part of an object
PUT/{Bucket}/{TargetKey}?partNumber={partNumber}&uploadId={uploadId}Use an existing object as a part of a new object
PUT/{Bucket}?lifecycleCreate a lifecycle configuration
GET/{Bucket}?lifecycleRead a lifecycle configuration
DELETE/{Bucket}?lifecycleDelete a lifecycle configuration
POST/{Bucket}/{Key}?restoreTemporarily restore an archived object
PUT/{Bucket}?replicationConfigure a bucket for replication
GET/{Bucket}?replicationRead a replication configuration
DELETE/{Bucket}?replicationDelete a replication configuration
GET/{Bucket}?ibm-replication-failuresList replication failures in a bucket
PUT/{Bucket}?ibm-replication-reattemptSchedule replication failure reattempt
PUT/{Bucket}?protectionCreate a protection configuration
PUT/{Bucket}?websiteCreate a website configuration
GET/{Bucket}?websiteRead a website configuration
DELETE/{Bucket}?websiteDelete a website configuration
PUT/{Bucket}?corsConfigure CORS
GET/{Bucket}?corsRead a CORS configuration
DELETE/{Bucket}?corsDelete a CORS configuration
PUT/{Bucket}/{Key}?taggingAdd a set of tags to an object
GET/{Bucket}/{Key}?taggingRead a set of object tags
DELETE/{Bucket}/{Key}?taggingDelete a set of object tags
PUT/{Bucket}?publicAccessBlockCreate a public ACL block configuration
GET/{Bucket}?publicAccessBlockRead a public ACL block configuration
DELETE/{Bucket}?publicAccessBlockDelete a public ACL block configuration
GET/{Bucket}?aclRead a bucket ACL
PUT/{Bucket}?aclCreate a bucket ACL
GET/{Bucket}/{Key}?aclRead an object ACL
PUT/{Bucket}/{Key}?aclMake an object publicly accessible