All Products
Search
Document Center

Expenses and Costs:GetSubscriptionPrice

Last Updated:Oct 28, 2025

Queries the price of a subscription product.

Operation description

  1. You can call the QueryProductList operation to obtain the product code. For more information, see Query product information.

  2. You can call the DescribePricingModule operation to obtain the configuration parameters of the product. For more information, see Query product module information.

  3. You can call this operation with the obtained configuration parameters to query the price of the subscription product.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

bss:DescribePrice

get

*All Resource

*

bssapi:ProductCode

bssapi:ProductType

None

Request parameters

Parameter

Type

Required

Description

Example

ServicePeriodUnit

string

No

The unit of the subscription duration. Valid values:

  • Year

  • Month

Year

SubscriptionType

string

Yes

The subscription type. Set the value to Subscription.

Subscription

ProductCode

string

Yes

The product code.

ecs

OrderType

string

Yes

The order type. Valid values:

  • NewOrder: The order is for a new purchase.

  • Renewal: The order is for a renewal.

  • Upgrade: The order is for an upgrade.

NewOrder

ServicePeriodQuantity

integer

No

The subscription duration.

1

ProductType

string

No

The product type. To determine if this parameter is required, see the pricing documentation for the specific product.

ecs

Region

string

No

The ID of the region where the instance resides.

cn-hangzhou

InstanceId

string

No

The ID of the instance for which you want to query the price. This parameter is required for upgrade scenarios to obtain the configuration of the instance before the upgrade.

i-khkjhxxxxxxxxx

Quantity

integer

No

The quantity.

1

ModuleList

array<object>

Yes

The list of pricing modules.

object

No

ModuleStatus

integer

No

Required only when OrderType is set to Upgrade. It indicates the status of the pricing module. Valid values:

  • 1: The pricing module is added.

  • 2: The pricing module is changed. You must specify this value in upgrade scenarios if the configuration of the pricing module changes.

Default value: 1.

1

ModuleCode

string

Yes

The identifier of the Nth pricing module.

PackageCode

Tag

string

No

Required only when you upgrade or downgrade some products. It specifies the identifier of a resource. For example, if you change the specifications of a disk, you can use this parameter to specify the ID of the disk.

213213123

Config

string

Yes

The configuration of the Nth pricing module, where N can be an integer from 1 to 50, in the AA:aa,BB:bb format, where AA and BB are the property codes of the pricing module, and aa and bb are the property values.

PackageCode:version_1

Response elements

Parameter

Type

Description

Example

object

Code

string

The status code.

InvalidConfigCod

Message

string

The error message.

Successful

RequestId

string

The request ID.

30E7066E-AE6F-4E59-AFE6-11386CE3AFA7

Success

boolean

Indicates whether the request was successful.

true

Data

object

The information about the product price.

OriginalPrice

number

The original price.

900

DiscountPrice

number

The discount.

100

Currency

string

The currency. Valid values:

  • CNY: Chinese Yuan

  • USD: US Dollar

  • JPY: Japanese Yen

CNY

Quantity

integer

The quantity.

1

TradePrice

number

The discounted price.

0

ModuleDetails

object

ModuleDetail

array<object>

The price details of the pricing module.

object

CostAfterDiscount

number

The discounted price.

0

InvoiceDiscount

number

The discount.

100

UnitPrice

number

The unit price.

0

OriginalCost

number

The original price.

200

ModuleCode

string

The code of the pricing module.

PackageCode

PromotionDetails

object

PromotionDetail

array<object>

The details of the discount.

object

PromotionDesc

string

The description of the discount.

test

PromotionId

integer

The ID of the discount.

1021199213

PromotionName

string

The name of the discount.

test

Examples

Success response

JSON format

{
  "Code": "InvalidConfigCod",
  "Message": "Successful",
  "RequestId": "30E7066E-AE6F-4E59-AFE6-11386CE3AFA7",
  "Success": true,
  "Data": {
    "OriginalPrice": 900,
    "DiscountPrice": 100,
    "Currency": "CNY",
    "Quantity": 1,
    "TradePrice": 0,
    "ModuleDetails": {
      "ModuleDetail": [
        {
          "CostAfterDiscount": 0,
          "InvoiceDiscount": 100,
          "UnitPrice": 0,
          "OriginalCost": 200,
          "ModuleCode": "PackageCode"
        }
      ]
    },
    "PromotionDetails": {
      "PromotionDetail": [
        {
          "PromotionDesc": "test",
          "PromotionId": 1021199213,
          "PromotionName": "test"
        }
      ]
    }
  }
}

Error codes

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.