Supported OpenStack Object Storage API Capabilities
         The following topics describe the supported OpenStack Object Storage API V1.0
                capabilities for Oracle ZFS Storage Appliance.
         For full details about OpenStack Object Storage API, including descriptions of the
                request and response parameters, see the OpenStack Object Storage API documentation:
                    http://developer.openstack.org/api-ref-objectstorage-v1.html.
         
Note - 
            Some optional request and response parameters are not supported by Oracle ZFS
                    Storage Appliance systems. Unsupported parameters are listed in the following
                    tables.
         
         
            Discoverability
            If configured, lists the activated capabilities for this version of the
                    OpenStack Object Storage API.
            
               Table 1  Discoverability Commands
               
               | 
                  
                  
                  
                  
                  
                  
                  
                     
                        |  |  |  |  |  |  |  
                        | GET | /info | Lists the activated capabilities for this version of the
                                        OpenStack Object Storage API.  | 200 | swiftinfo_sig, swiftinfo_expires |  |  | 
            
         
         
            Accounts
            These operations are used to perform account-level tasks.
            
               Table 2  Accounts Commands
               
               | 
                  
                  
                  
                  
                  
                  
                  
                     
                        |  |  |  |  |  |  |  
                        | GET | /v1/{account} | Shows account details and list containers, sorted by name,
                                        in the account | 200, 204 | X-Newest, Accept, X-Trans-Id-Extra | X-Account-Meta-Temp-URL-Key,
                                        X-Account-Meta-Temp-URL-Key-2 |  
                        | POST | /v1/{account} | Creates, updates, or deletes account metadata  | 204 | X-Account-Meta-Temp-URL-Key,
                                        X-Account-Meta-Temp-URL-Key-2, X-Trans-Id-Extra |  |  
                        | HEAD | /v1/{account} | Shows account metadata | 204 | X-Newest, X-Trans-Id-Extra | X-Account-Meta-Temp-URL-Key,
                                        X-Account-Meta-Temp-URL-Key-2 |  | 
            
         
         
            Containers
            These operations are used to perform container-level tasks.
            
               Table 3  Containers Commands
               
               | 
                  
                  
                  
                  
                  
                  
                  
                     
                        |  |  |  |  |  |  |  
                        | GET | /v1/{account}/{container} | Shows details for a container and lists objects, sorted by
                                        name, in the container  | 200, 204 | X-Newest, Accept, X-Container-Meta-Temp-URL-Key,
                                        X-Container-Meta-Temp-URL-Key-2, X-Trans-Id-Extra | X-Container-Meta-Temp-URL-Key,
                                        X-Container-Meta-Temp-URL-Key-2 |  
                        | PUT | /v1/{account}/{container} | Creates a container | 201, 204 | X-Container-Sync-To, X-Container-Sync-Key,
                                        X-Container-Meta-Access-Control-Allow-Origin,
                                        X-Container-Meta-Access-Control-Max-Age,
                                        X-Container-Meta-Access-Control-Expose-Headers, X-Newest,
                                        Accept, X-Container-Meta-Temp-URL-Key,
                                        X-Container-Meta-Temp-URL-Key-2, X-Trans-Id-Extra |  |  
                        | DELETE | /v1/{account}/{container} | Deletes an empty container | 204 | X-Container-Meta-Temp-URL-Key,
                                        X-Container-Meta-Temp-URL-Key-2, X-Trans-Id-Extra |  |  
                        | POST | /v1/{account}/{container} | Creates, updates, or deletes container metadata  | 204 | X-Remove-Container-name, X-Container-Sync-To,
                                        X-Container-Sync-Key,
                                        X-Container-Meta-Access-Control-Allow-Origin,
                                        X-Container-Meta-Access-Control-Max-Age,
                                        X-Container-Meta-Access-Control-Expose-Headers,
                                        X-Container-Meta-Quota-Bytes, X-Container-Meta-Quota-Count,
                                        X-Container-Meta-Web-Directory-Type,
                                        X-Container-Meta-Temp-URL-Key,
                                        X-Container-Meta-Temp-URL-Key-2, X-Trans-Id-Extra |  |  
                        | HEAD | /v1/{account}/{container} | Shows container metadata, including the number of objects
                                        and the total bytes of all objects stored in the container.
                                     | 204 | X-Newest, X-Trans-Id-Extra, X-Container-Meta-Temp-URL-Key,
                                        X-Container-Meta-Temp-URL-Key-2, X-Trans-Id-Extra | X-Container-Meta-Access-Control-Allow-Origin,
                                        X-Container-Meta-Access-Control-Max-Age,
                                        X-Container-Meta-Access-Control-Expose-Headers,,
                                        X-Container-Meta-Quota-Bytes, X-Container-Meta-Quota-Count,
                                        X-Container-Sync-To, X-Container-Sync-Key,
                                        X-Container-Meta-Temp-URL-Key,
                                        X-Container-Meta-Temp-URL-Key-2 |  | 
            
         
         
            Objects
            These operations are used to perform object-level tasks.
            
               Table 4  Objects Commands
               
               | 
                  
                  
                  
                  
                  
                  
                  
                     
                        |  |  |  |  |  |  |  
                        | GET | /v1/{account}/{container}/{object} | Downloads the object content and gets the object
                                        metadata | 200 | X-Newest, temp_url_sig, temp_url_expires, filename,
                                        X-Trans-Id-Extra | Content-Disposition, X-Static-Large-Object |  
                        | PUT | /v1/{account}/{container}/{object} | Creates an object with data content and metadata, or
                                        replaces an existing object with data content and
                                        metadata | 201 | temp_url_sig, temp_url_expires, filename,
                                        Transfer-Encoding, Content-Disposition,
                                        X-Trans-Id-Extra |  |  
                        | COPY | /v1/{account}/{container}/{object} | Copies an object to another object in the object
                                        store | 201 | Content-Disposition, X-Fresh-Metadata,
                                        X-Trans-Id-Extra |  |  
                        | DELETE | /v1/{account}/{container}/{object} | Permanently deletes an object from the object store | 204 | X-Trans-Id-Extra |  |  
                        | POST | /v1/{account}/{container}/{object} | Creates or updates object metadata | 202 | Content-Disposition, X-Trans-Id-Extra, |  |  
                        | HEAD | /v1/{account}/{container}/{object} | Shows object metadata | 200, 204 | temp_url_sig, temp_url_expires, filename, X-Newest,
                                        X-Trans-Id-Extra | Content-Disposition, X-Static-Large-Object |  |