All operations pertaining to accessing and managing Object Storage Service (OSS) resources, whether conducted over the internal network or the Internet, whether executed through API calls, OSS SDKs, the OSS console, ossutil, or ossbrowser, and irrespective of whether public-read or private objects are accessed, are fundamentally based on RESTful APIs. You are charged request fees based on the actual number of API calls. If your business application requires access to Cold Archive or Deep Cold Archive objects, you must restore these objects before accessing. In this case, you are also charged data retrieval fees.
Unit price
This topic describes only the billable items and billing methods. For information about the billable items and pricing details, see OSS Fees.
Billable item
You are charged for requests with HTTP status codes 2xx and 3xx returned, and not charged for requests with HTTP status codes 4xx and 5xx returned.
PUT requests
Item | Billing code | Billing rule |
PUT requests | PutRequest | Request fees are calculated based on the number of PUT requests. |
PUT requests include requests initiated to upload, copy, or delete objects. The following table lists the specific API requests for PUT operations.
GET requests
Item | Billing code | Billing rule |
GET requests | GetRequest | Request fees are calculated based on the number of GET requests. |
GET requests are used to retrieve information about buckets or objects. The following table lists the specific API requests for GET operations.
Cold Archive data retrieval requests
Item | Billing code | Billing rule |
Cold Archive data retrieval requests | Data retrieval requests are divided into the following categories based on restoration priorities of Cold Archive data, each associated with the following billing codes:
| A Cold Archive object must be restored before you can access it. The amount of time required to restore a Cold Archive object depends on the object size and the selected restoration priority. You are charged data retrieval fees when you restore a Cold Archive object. The restoration of a Cold Archive object is considered a data retrieval request. The number of requests is independent of the object size. Note In addition to data retrieval requests, you are charged for the retrieval of Cold Archive objects, and temporary storage usage when you restore Cold Archive objects. |
Deep Cold Archive data retrieval requests
Item | Billing code | Billing rule |
Deep Cold Archive data retrieval requests | Data retrieval requests are divided into two categories based on restoration priorities of Deep Cold Archive data, each associated with the following billing codes:
| A Deep Cold Archive object must be restored before you can access it. The amount of time required to restore a Deep Cold Archive object depends on the object size and the selected restoration priority. You are charged data retrieval fees when you restore a Deep Cold Archive object. The restoration of a Deep Cold Archive object is considered a data retrieval request. The number of requests is independent of the object size. Note In addition to data retrieval requests, you are charged for the retrieval of Deep Cold Archive objects, and temporary storage usage when you restore Deep Cold Archive objects. |
Billing rules for special requests
You are charged request fees for each PUT or GET request. Certain API requests may involve batch operations, which require the implementation of different calculation methods.
Request | Duration of the restored state | API operation calling fee | Example |
ListObjects | Lists all objects in the bucket. | One call to the ListObjects or ListObjectsV2 operation counts as one PUT request. When a fixed number of objects are listed, the number of requests generated by calling this operation depends on the number of objects set to be retrieved in each call. | For example, 10,000 objects are stored within a bucket.
|
ListObjectsV2 | |||
DeleteMultipleObjects | Deletes multiple objects from a bucket. | One call to the DeleteMultipleObjects operation counts as one PUT request. When a fixed number of objects are deleted, the number of requests generated by calling this operation depends on the number of objects processed in each call. | For example, 10,000 objects are stored within a bucket.
|
CommitTransition | Configures lifecycle rules to convert the storage class of objects. | One call to the CommitTransition operation counts as one PUT request. Fees for PUT requests are calculated based on the number of objects to which the lifecycle rule is applied. | For example, if you configure a lifecycle rule to convert the storage class of 1000 objects under the prefix dir from Standard to IA after 100 days, you will be charged for 1000 PUT requests. |
ExpireObject | Deletes an object based on lifecycle rules. | One call to the ExpireObject operation counts as one PUT request. Fees for PUT requests are calculated based on the number of objects to which the lifecycle rule is applied. | For example, if you configure a lifecycle rule to delete 1000 objects under the prefix dir from after 365 days, you will be charged for 1000 PUT requests. |
Billing methods
Instructions on selecting a billing method
We recommend that you refer to the following table to learn about the features and scenarios of different billing methods. This helps you select an appropriate billing method to reduce request fees.
Payment option | Description | Feature | Scenario |
Pay-as-you-go. | By default, you are charged for all billable items based on the pay-as-you-go billing method. You are charged for the actual storage usage of each billable item. Pay-as-you-go allows you to use resources first and pay for them afterwards. | The number of requests fluctuates significantly and is difficult to predict. |
|
Request Plan-Standard Storage Class | The resource plan intended for PUT and GET operations on standard objects. When bills are being settled, resource plans have higher priority than the pay-as-you-go billing method. Before you can use resource plans to offset fees, you must purchase resource plans. | The number of requests for Standard data is relatively stable and predictable. |
|
Request Plan-Storage Classes Other Than Standard | The resource plan intended for PUT and GET operations on IA, Archive, and Cold Archive objects. When bills are being settled, resource plans have higher priority than the pay-as-you-go billing method. Before you can use resource plans to offset fees, you must purchase resource plans. | The number of requests for IA, Archive, and Cold Archive data is relatively stable and predictable. | You need to upload a large amount of data that requires long-term storage but is accessed infrequently. |
Supported payment options
The following table lists the billing methods supported for each billable item.
Item | Pay-as-you-go | Resource plan |
Number of PUT requests | √ | × |
Number of GET requests | √ | × |
Cold Archive data retrieval requests | √ | × |
Deep Cold Archive data retrieval requests | √ | × |
FAQ
Can I ask requesters instead of the bucket owner to pay the fees for requests?
If you want requesters instead of the bucket owner to pay fees for their PUT requests and GET requests, you can enable pay-by-requester for the bucket. For more information, see Enable pay-by-requester.
Reference
For information about further billing details, see Query bills.