すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:PurchaseReservedInstancesOffering

最終更新日:Apr 04, 2026

リージョンまたはゾーンのリザーブドインスタンスを購入し、従量課金の Elastic Compute Service (ECS) インスタンスの請求を相殺します。

操作説明

この操作を呼び出す前に、リザーブドインスタンスの支払い方法と料金設定をよく理解していることを確認してください。

  • この操作を呼び出す前に、リザーブドインスタンスの課金ルールをよく理解していることを確認してください。 詳細については、「リザーブドインスタンス」をご参照ください。

  • 1 つの Alibaba Cloud アカウントにつき、すべてのリージョンで最大 20 個のリージョンリザーブドインスタンスを保有できます。

  • 1 つの Alibaba Cloud アカウントにつき、ゾーンごとに最大 20 個のゾーンリザーブドインスタンスを保有できます。

リクエストの例

  • 中国 (杭州) リージョンで 1 年間のリージョンリザーブドインスタンスを購入し、3 台の ecs.g5.large Linux 従量課金インスタンスの請求を相殺します。

"RegionId":"cn-hangzhou", // 中国 (杭州) リージョンを指定します。
"InstanceType":"ecs.g5.large", // インスタンスタイプを指定します。
"Scope":"Region", // リザーブドインスタンスの範囲をリージョンに設定します。
"InstanceAmount":3, // 同じインスタンスタイプの従量課金インスタンス 3 台に一致するようにリザーブドインスタンスを指定します。
"OfferingType":"All Upfront", // 支払い方法を指定します。 この例では、デフォルト値の All Upfront が使用されます。
"Platform":"Linux", // リザーブドインスタンスの対象となる ECS インスタンスのオペレーティングシステムプラットフォームを指定します。 この例では、Linux または UNIX ライクのオペレーティングシステムが使用されます。
"Period":1, // リザーブドインスタンスの期間を指定します。 この例では、1 年間の期間が使用されます。
"PeriodUnit":"Year", // 期間の単位を年に設定します。
  • 杭州ゾーン H で 2 年間のゾーンリザーブドインスタンスを購入し、5 台の ecs.g5.large Windows 従量課金インスタンスの請求を相殺します。

"RegionId":"cn-hangzhou",
"ZoneId":"cn-hangzhou-h", // 杭州ゾーン H を指定します。
"InstanceType":"ecs.g5.large",
"Scope":"Zone", // リザーブドインスタンスの範囲をゾーンに設定します。
"InstanceAmount":5, // 同じインスタンスタイプの従量課金インスタンス 5 台に一致するようにリザーブドインスタンスを指定します。
"OfferingType":"All Upfront",
"Platform":"Windows", // リザーブドインスタンスの対象となる ECS インスタンスのオペレーティングシステムプラットフォームを指定します。 この例では、Windows オペレーティングシステムが使用されます。
"Period":2, // リザーブドインスタンスの期間を指定します。 この例では、2 年間の期間が使用されます。
"PeriodUnit":"Year", // 期間の単位を年に設定します。

今すぐお試しください

この API を OpenAPI Explorer でお試しください。手作業による署名は必要ありません。呼び出しに成功すると、入力したパラメーターに基づき、資格情報が組み込まれた SDK コードが自動的に生成されます。このコードをダウンロードしてローカルで使用できます。

テスト

RAM 認証

下表に、この API を呼び出すために必要な認証情報を示します。認証情報は、RAM (Resource Access Management) ポリシーを使用して定義できます。以下で各列名について説明します。

  • アクション:特定のリソースに対して実行可能な操作。ポリシー構文ではAction要素として指定します。

  • API:アクションを具体的に実行するための API。

  • アクセスレベル:各 API に対して事前定義されているアクセスの種類。有効な値:create、list、get、update、delete。

  • リソースタイプ:アクションが作用するリソースの種類。リソースレベルでの権限をサポートするかどうかを示すことができます。ポリシーの有効性を確保するため、アクションの対象として適切なリソースを指定してください。

    • リソースレベルの権限を持つ API の場合、必要なリソースタイプはアスタリスク (*) でマークされます。ポリシーのResource要素で対応する ARN を指定してください。

    • リソースレベルの権限を持たない API の場合、「すべてのリソース」と表示され、ポリシーのResource要素でアスタリスク (*) でマークされます。

  • 条件キー:サービスによって定義された条件のキー。このキーにより、きめ細やかなアクセス制御が可能になります。この制御は、アクション単体に適用することも、特定のリソースに対するアクションに適用することもできます。Alibaba Cloud は、サービス固有の条件キーに加えて、すべての RAM 統合サービスに適用可能な一連の共通条件キーを提供しています。

  • 依存アクション:ある特定のアクションを実行するために、前提として実行が必要となる他のアクション。依存アクションの権限も RAM ユーザーまたは RAM ロールに付与する必要があります。

アクション

アクセスレベル

リソースタイプ

条件キー

依存アクション

ecs:PurchaseReservedInstancesOffering

create

*ReservedInstance

acs:ecs:{#regionId}:{#accountId}:reservedinstance/*

なし なし

リクエストパラメーター

パラメーター

型

必須 / 任意

説明

例

RegionId

string

必須

リザーブドインスタンスを購入するリージョンの ID。 DescribeRegions 操作を呼び出して、最新のリージョンリストを照会できます。

cn-hangzhou

Tag

array<object>

任意

リザーブドインスタンスに追加するタグ。 最大 20 個のタグを追加できます。

object

任意

Key

string

任意

リザーブドインスタンスに追加するタグキー。 タグキーは空の文字列にすることはできません。 タグキーは最大 128 文字で、http:// または https:// を含めることはできません。 タグキーは acs: または aliyun で始めることはできません。

TestKey

Value

string

任意

リザーブドインスタンスに追加するタグ値。 タグ値は空の文字列にすることはできません。 タグ値は最大 128 文字で、http:// または https:// を含めることはできません。 タグ値は acs: または aliyun で始めることはできません。

TestValue

ResourceGroupId

string

任意

リソースグループの ID。

rg-bp199lyny9b3****

ZoneId

string

任意

リザーブドインスタンスを購入するゾーンの ID。 このパラメーターは、Scope を Zone に設定した場合にのみ有効になり、必須となります。 DescribeZones 操作を呼び出して、最新のゾーンリストを照会できます。

cn-hangzhou-g

ReservedInstanceName

string

任意

リザーブドインスタンスの名前。 名前は 2~128 文字である必要があります。 名前は文字で始まる必要があり、http:// または https:// で始めることはできません。 名前に使用できる文字は、英字、数字、コロン (:)、アンダースコア (_)、ハイフン (-) です。

testReservedInstanceName

InstanceType

string

必須

リザーブドインスタンスが一致できるインスタンスタイプ。

説明

リザーブドインスタンスをサポートするインスタンスタイプは更新されることがあります。 詳細については、「リザーブドインスタンスの概要」をご参照ください。

ecs.g5.large

Scope

string

任意

リザーブドインスタンス N の範囲。 有効な値:

  • Region:リージョン

  • Zone:ゾーン

デフォルト値:Region。

Zone

InstanceAmount

integer

任意

リザーブドインスタンスが一致できる、同じインスタンスタイプの従量課金インスタンスの数。 有効な値:1~50。

デフォルト値:1。

3

OfferingType

string

任意

リザーブドインスタンスの支払い方法。 有効な値:

  • No Upfront

  • Partial Upfront

  • All Upfront

デフォルト値:All Upfront。

All Upfront

Description

string

任意

リザーブドインスタンスの説明。 説明は 2~256 文字で、http:// または https:// で始めることはできません。

このパラメーターはデフォルトで空のままです。

testDescription

Platform

string

任意

インスタンスが使用するイメージのオペレーティングシステム。 有効な値:

  • Windows:Windows Server オペレーティングシステム

  • Linux:Linux および UNIX ライクのオペレーティングシステム

デフォルト値:Linux。

Linux

Period

integer

任意

リザーブドインスタンスの有効期間。

有効な値:1 および 3。

デフォルト値:1。

1

PeriodUnit

string

任意

リザーブドインスタンスの有効期間の単位。

有効な値:Year。

デフォルト値:Year。

Year

ClientToken

string

任意

リクエストのべき等性を保証するために使用されるクライアントトークン。 クライアントを使用してトークンを生成できますが、トークンが異なるリクエスト間で一意であることを確認する必要があります。 ClientToken の値には ASCII 文字のみを含めることができ、長さは 64 文字を超えることはできません。 詳細については、「べき等性を確保する方法」をご参照ください。

123e4567-e89b-12d3-a456-426655440000

AutoRenew

boolean

任意

リザーブドインスタンスの自動更新を有効にするかどうかを指定します。 有効な値:

  • true

  • false (デフォルト)

true

AutoRenewPeriod

integer

任意

リザーブドインスタンスの自動更新期間。 単位:月。 このパラメーターは、AutoRenew が true に設定されている場合にのみ有効になります。

有効な値:12 および 36。

PeriodUnit が Year に設定されている場合のデフォルト値:12。

1

StartTime

string

任意

リザーブドインスタンスを有効にする時間。 時間は ISO 8601 規格の yyyy-MM-ddTHHZ 形式で指定します。 時間は協定世界時 (UTC) である必要があります。

説明

このパラメーターを指定しない場合、リザーブドインスタンスは購入された時間から有効になります。 たとえば、2024 年 11 月 1 日 13:45:35 にリザーブドインスタンスを購入した場合、リザーブドインスタンスは 2024 年 11 月 1 日 13:00:00 から有効になります。

2024-07-04T15Z

レスポンスフィールド

フィールド

型

説明

例

object

RequestId

string

リクエスト ID。

8C314443-AF0D-4766-9562-C83B7F1A3C8B

ReservedInstanceIdSets

object

ReservedInstanceId

array

リザーブドインスタンスの ID。

string

リザーブドインスタンスの ID。

ecsri-2ze53qonjqxg7r****

OrderId

string

注文 ID。

23841229****

例

成功レスポンス

JSONJSON

{
  "RequestId": "8C314443-AF0D-4766-9562-C83B7F1A3C8B",
  "ReservedInstanceIdSets": {
    "ReservedInstanceId": [
      "ecsri-2ze53qonjqxg7r****"
    ]
  },
  "OrderId": "23841229****"
}

エラーレスポンス

JSONJSON

{
    "RequestId": "51AB7717-6E1A-4D1D-A44D-54CBxxxxxxxx",
    "ReservedInstanceId":"ri-instance"
}

エラーコード

HTTP ステータスコード

エラーコード

エラーメッセージ

説明

400 InvalidStartTime.ScopeNotMatch Zonal reservedInstance not supported for scheduled creating.
400 InvalidInstanceType.ValueUnauthorized The specified InstanceType is not authorized.
400 InvalidDescription.Malformed The specified parameter "Description" is not valid.
400 InvalidParameter.Conflict The specified region and cluster do not match.
400 InvalidTagKey.Malformed The specified Tag.n.Key is not valid.
400 InvalidPeriodUnit.ValueNotSupported The specified parameter PeriodUnit is not valid.
400 InvalidTagValue.Malformed The specified Tag.n.Value is not valid.
400 InvalidChargeType.ValueNotSupported ChargeType is not valid.
400 InvalidParameter.Scope The specified parameter 'Scope' is invalid.
400 InvalidReservedInstanceStatus.ValueNotSupported ReservedInstance status is not supported.
400 InvalidReservedInstanceOfferingType.ValueNotSupported The OfferingType is not supported.
400 InvalidReservedInstanceOfferingClass.ValueNotSupported The OfferingClass is not supported.
400 MissingParameter.ZoneId The specified zoneId should be not empty.
400 MissingParameter.InstanceType The instanceType should be not empty.
400 MissingParameter.ReservedInstanceId The ids of reservedInstance can not be empty.
400 MissingParameter.ReservedInstanceConfiguration The configurations of reservedInstance can not be empty.
400 InvalidParameter.SplitOrMerge The Many-to-many of modification is not supported.
400 MissingParameter.InstanceTypeAndAmountBothEmpty The instanceType and amount can not be both empty.
400 InvalidReservedInstancePlatform.ValueNotSupported The Platform is not supported.
400 InvalidParameter.ReservedInstanceName ReservedInstanceName is invalid.
400 InvalidReservedInstanceZone.ValueNotSupported The zoneId is not exist.
400 OperationDenied The specified InstanceType or Zone is not authorized for current user.
400 InvalidInstanceType.ValueNotSupported The specified InstanceType beyond the permitted range.
500 InternalError The request processing has failed due to some unknown error.
403 OperationDenied The creation of Host to the specified Zone is not allowed.
403 OperationDenied.NoStock The requested resource is sold out in the specified zone; try other types of resources or other regions and zones.
403 NodeControllerUnavailable The Node Controller is temporarily unavailable.
403 InvalidParameter.ResourceOwnerAccount ResourceOwnerAccount is Invalid.
403 Zone.NotOpen The specified zone is not granted to you to buy resources yet.
403 Zone.NotOnSale The specified zone is not available for purchase.
403 Account.Arrearage Your account has been in arrears.
403 InvalidStartTime.MalFormed The specified StartTime is not valid.
403 InvalidStartTime.NotSupported The specified startTime is not supported.
403 RegionUnauthorized You are not authorized to perform the operation in the specified region.
404 InvalidZoneId.NotFound The ZoneId provided does not exist in our records.
404 PaymentMethodNotFound No payment method has been registered on the account.

完全なリストについては、「エラーコード」をご参照ください。

変更履歴

完全なリストについては、「変更履歴」をご参照ください。