openapi: 3.0.3 info: title: International Business Machines IBM Cloud Object Storage API description: >- The IBM Cloud Object Storage API provides a RESTful interface compatible with S3 for storing and retrieving objects in buckets. It supports features such as multipart uploads, versioning, lifecycle policies, and server-side encryption. version: 1.0.0 contact: name: IBM Cloud url: https://cloud.ibm.com/docs/cloud-object-storage license: name: IBM Cloud Terms url: https://www.ibm.com/terms servers: - url: https://s3.us-south.cloud-object-storage.appdomain.cloud description: US South - url: https://s3.eu-de.cloud-object-storage.appdomain.cloud description: EU Germany - url: https://s3.eu-gb.cloud-object-storage.appdomain.cloud description: EU Great Britain paths: /: get: operationId: listBuckets summary: International Business Machines List buckets description: List all buckets in the service instance. tags: - Buckets parameters: - name: ibm-service-instance-id in: header required: true schema: type: string responses: '200': description: Successful response content: application/xml: schema: type: object /{bucket}: put: operationId: createBucket summary: International Business Machines Create a bucket description: Create a new bucket. tags: - Buckets parameters: - name: bucket in: path required: true schema: type: string - name: ibm-service-instance-id in: header required: true schema: type: string responses: '200': description: Bucket created delete: operationId: deleteBucket summary: International Business Machines Delete a bucket description: Delete an empty bucket. tags: - Buckets parameters: - name: bucket in: path required: true schema: type: string responses: '204': description: Bucket deleted get: operationId: listObjects summary: International Business Machines List objects in a bucket description: List objects stored in a bucket. tags: - Objects parameters: - name: bucket in: path required: true schema: type: string - name: prefix in: query schema: type: string - name: max-keys in: query schema: type: integer responses: '200': description: Successful response /{bucket}/{key}: put: operationId: putObject summary: International Business Machines Upload an object description: Upload an object to a bucket. tags: - Objects parameters: - name: bucket in: path required: true schema: type: string - name: key in: path required: true schema: type: string requestBody: content: application/octet-stream: schema: type: string format: binary responses: '200': description: Object uploaded get: operationId: getObject summary: International Business Machines Get an object description: Retrieve an object from a bucket. tags: - Objects parameters: - name: bucket in: path required: true schema: type: string - name: key in: path required: true schema: type: string responses: '200': description: Successful response content: application/octet-stream: schema: type: string format: binary delete: operationId: deleteObject summary: International Business Machines Delete an object description: Delete an object from a bucket. tags: - Objects parameters: - name: bucket in: path required: true schema: type: string - name: key in: path required: true schema: type: string responses: '204': description: Object deleted components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: IAM Token security: - bearerAuth: [] tags: - name: Buckets description: Manage storage buckets. - name: Objects description: Manage objects within buckets.