Share via


Reservation Order - Calculate

Calculate price for a ReservationOrder.
Calculate price for placing a ReservationOrder.

POST https://management.azure.com/providers/Microsoft.Capacity/calculatePrice?api-version=2022-11-01

URI Parameters

Name In Required Type Description
api-version
query True

string

Supported version.

Request Body

Name Type Description
location

string

The Azure region where the reserved resource lives.

properties.appliedScopeProperties

AppliedScopeProperties

Properties specific to applied scope type. Not required if not applicable. Required and need to provide tenantId and managementGroupId if AppliedScopeType is ManagementGroup

properties.appliedScopeType

AppliedScopeType

Type of the Applied Scope.

properties.appliedScopes

string[]

List of the subscriptions that the benefit will be applied. Do not specify if AppliedScopeType is Shared. This property will be deprecated and replaced by appliedScopeProperties instead for Single AppliedScopeType.

properties.billingPlan

ReservationBillingPlan

Represent the billing plans.

properties.billingScopeId

string

Subscription that will be charged for purchasing reservation or savings plan

properties.displayName

string

Friendly name of the reservation

properties.quantity

integer (int32)

Quantity of the skus that are part of the reservation.

properties.renew

boolean

Setting this to true will automatically purchase a new reservation on the expiration date time.

properties.reservedResourceProperties

ReservedResourceProperties

Properties specific to each reserved resource type. Not required if not applicable.

properties.reservedResourceType

ReservedResourceType

The type of the resource that is being reserved. In addition to below types we have also added the following: OpenAIPTU, MDC, Sentinel.

properties.reviewDateTime

string (date-time)

This is the date-time when the Azure hybrid benefit needs to be reviewed.

properties.term

ReservationTerm

Represent the term of reservation.

sku

SkuName

The name of sku

Responses

Name Type Description
200 OK

CalculatePriceResponse

Detailed price info for purchasing ReservationOrder

Other Status Codes

Error

Unexpected error

Examples

CalculatePrice

Sample request

POST https://management.azure.com/providers/Microsoft.Capacity/calculatePrice?api-version=2022-11-01

{
  "sku": {
    "name": "standard_D1"
  },
  "location": "westus",
  "properties": {
    "reservedResourceType": "VirtualMachines",
    "billingScopeId": "/subscriptions/ed3a1871-612d-abcd-a849-c2542a68be83",
    "term": "P1Y",
    "billingPlan": "Monthly",
    "quantity": 1,
    "displayName": "TestReservationOrder",
    "appliedScopes": null,
    "appliedScopeType": "Shared",
    "reservedResourceProperties": {
      "instanceFlexibility": "On"
    }
  }
}

Sample response

{
  "properties": {
    "billingCurrencyTotal": {
      "currencyCode": "USD",
      "amount": 46
    },
    "reservationOrderId": "6d9cec54-7de8-abcd-9de7-80f5d634f2d2",
    "skuTitle": "Reserved VM Instance, Standard_D1, US West, 1 Year",
    "skuDescription": "standard_D1",
    "pricingCurrencyTotal": {
      "currencyCode": "USD",
      "amount": 46
    },
    "paymentSchedule": [
      {
        "dueDate": "2019-05-14",
        "pricingCurrencyTotal": {
          "currencyCode": "USD",
          "amount": 46
        },
        "billingCurrencyTotal": {
          "currencyCode": "EUR",
          "amount": 40
        }
      },
      {
        "dueDate": "2019-06-14",
        "pricingCurrencyTotal": {
          "currencyCode": "USD",
          "amount": 46
        }
      },
      {
        "dueDate": "2019-07-14",
        "pricingCurrencyTotal": {
          "currencyCode": "USD",
          "amount": 46
        }
      }
    ]
  }
}

Definitions

Name Description
AppliedScopeProperties

Properties specific to applied scope type. Not required if not applicable. Required and need to provide tenantId and managementGroupId if AppliedScopeType is ManagementGroup

AppliedScopeType

Type of the Applied Scope.

BillingCurrencyTotal

Currency and amount that customer will be charged in customer's local currency for renewal purchase. Tax is not included.

CalculatePriceResponse

The response of calculate price for reservation.

CalculatePriceResponseProperties

Properties for calculate price response

Error

Error information

ErrorResponseCode

Error code describing the reason that service is not able to process the incoming request

ExtendedErrorInfo

Extended error information including error code and error message

ExtendedStatusInfo
InstanceFlexibility

Turning this on will apply the reservation discount to other VMs in the same VM size group. Only specify for VirtualMachines reserved resource type.

PaymentDetail

Information about payment related to a reservation order.

PaymentStatus

Describes whether the payment is completed, failed, cancelled or scheduled in the future.

Price

Pricing information containing the amount and the currency code

PricingCurrencyTotal

Amount that Microsoft uses for record. Used during refund for calculating refund limit. Tax is not included. This is locked price 30 days before expiry.

PurchaseRequest

The request for reservation purchase

ReservationBillingPlan

Represent the billing plans.

ReservationStatusCode
ReservationTerm

Represent the term of reservation.

ReservedResourceProperties

Properties specific to each reserved resource type. Not required if not applicable.

ReservedResourceType

The type of the resource that is being reserved. In addition to below types we have also added the following: OpenAIPTU, MDC, Sentinel.

SkuName

The name of sku

AppliedScopeProperties

Properties specific to applied scope type. Not required if not applicable. Required and need to provide tenantId and managementGroupId if AppliedScopeType is ManagementGroup

Name Type Description
displayName

string

Display name

managementGroupId

string

Fully-qualified identifier of the management group where the benefit must be applied.

resourceGroupId

string

Fully-qualified identifier of the resource group.

subscriptionId

string

Fully-qualified identifier of the subscription.

tenantId

string

Tenant ID where the savings plan should apply benefit.

AppliedScopeType

Type of the Applied Scope.

Value Description
Single
Shared
ManagementGroup

BillingCurrencyTotal

Currency and amount that customer will be charged in customer's local currency for renewal purchase. Tax is not included.

Name Type Description
amount

number

currencyCode

string

The ISO 4217 3-letter currency code for the currency used by this purchase record.

CalculatePriceResponse

The response of calculate price for reservation.

Name Type Description
properties

CalculatePriceResponseProperties

Properties for calculate price response

CalculatePriceResponseProperties

Properties for calculate price response

Name Type Description
billingCurrencyTotal

BillingCurrencyTotal

Currency and amount that customer will be charged in customer's local currency. Tax is not included.

grandTotal

number (double)

Total amount in pricing currency.

isBillingPartnerManaged

boolean

True if billing is managed by Microsoft Partner. Used only for CSP accounts.

isTaxIncluded

boolean

Whether or not tax is included in grand total

netTotal

number (double)

Net total amount in pricing currency.

paymentSchedule

PaymentDetail[]

Information about payment related to a reservation order.

pricingCurrencyTotal

PricingCurrencyTotal

Amount that Microsoft uses for record. Used during refund for calculating refund limit. Tax is not included.

reservationOrderId

string

GUID that represents reservation order that can be placed after calculating price.

skuDescription

string

Description of sku that is being purchased.

skuTitle

string

Title of sku that is being purchased.

taxTotal

number (double)

Tax amount in pricing currency.

Error

Error information

Name Type Description
error

ExtendedErrorInfo

Extended error information including error code and error message

ErrorResponseCode

Error code describing the reason that service is not able to process the incoming request

Value Description
NotSpecified
InternalServerError
ServerTimeout
AuthorizationFailed
BadRequest
ClientCertificateThumbprintNotSet
InvalidRequestContent
OperationFailed
HttpMethodNotSupported
InvalidRequestUri
MissingTenantId
InvalidTenantId
InvalidReservationOrderId
InvalidReservationId
ReservationIdNotInReservationOrder
ReservationOrderNotFound
InvalidSubscriptionId
InvalidAccessToken
InvalidLocationId
UnauthenticatedRequestsThrottled
InvalidHealthCheckType
Forbidden
BillingScopeIdCannotBeChanged
AppliedScopesNotAssociatedWithCommerceAccount
PatchValuesSameAsExisting
RoleAssignmentCreationFailed
ReservationOrderCreationFailed
ReservationOrderNotEnabled
CapacityUpdateScopesFailed
UnsupportedReservationTerm
ReservationOrderIdAlreadyExists
RiskCheckFailed
CreateQuoteFailed
ActivateQuoteFailed
NonsupportedAccountId
PaymentInstrumentNotFound
MissingAppliedScopesForSingle
NoValidReservationsToReRate
ReRateOnlyAllowedForEA
OperationCannotBePerformedInCurrentState
InvalidSingleAppliedScopesCount
InvalidFulfillmentRequestParameters
NotSupportedCountry
InvalidRefundQuantity
PurchaseError
BillingCustomerInputError
BillingPaymentInstrumentSoftError
BillingPaymentInstrumentHardError
BillingTransientError
BillingError
FulfillmentConfigurationError
FulfillmentOutOfStockError
FulfillmentTransientError
FulfillmentError
CalculatePriceFailed
AppliedScopesSameAsExisting
SelfServiceRefundNotSupported
RefundLimitExceeded

ExtendedErrorInfo

Extended error information including error code and error message

Name Type Description
code

ErrorResponseCode

Error code describing the reason that service is not able to process the incoming request

message

string

ExtendedStatusInfo

Name Type Description
message

string

The message giving detailed information about the status code.

statusCode

ReservationStatusCode

InstanceFlexibility

Turning this on will apply the reservation discount to other VMs in the same VM size group. Only specify for VirtualMachines reserved resource type.

Value Description
On
Off

PaymentDetail

Information about payment related to a reservation order.

Name Type Description
billingAccount

string

Shows the Account that is charged for this payment.

billingCurrencyTotal

Price

Amount charged in Billing currency. Tax not included. Is null for future payments

dueDate

string (date)

Date when the payment needs to be done.

extendedStatusInfo

ExtendedStatusInfo

paymentDate

string (date)

Date when the transaction is completed. Is null when it is scheduled.

pricingCurrencyTotal

Price

Amount in pricing currency. Tax not included.

status

PaymentStatus

Describes whether the payment is completed, failed, cancelled or scheduled in the future.

PaymentStatus

Describes whether the payment is completed, failed, cancelled or scheduled in the future.

Value Description
Succeeded
Failed
Scheduled
Cancelled

Price

Pricing information containing the amount and the currency code

Name Type Description
amount

number (double)

currencyCode

string

The ISO 4217 3-letter currency code for the currency used by this purchase record.

PricingCurrencyTotal

Amount that Microsoft uses for record. Used during refund for calculating refund limit. Tax is not included. This is locked price 30 days before expiry.

Name Type Description
amount

number

currencyCode

string

The ISO 4217 3-letter currency code for the currency used by this purchase record.

PurchaseRequest

The request for reservation purchase

Name Type Default value Description
location

string

The Azure region where the reserved resource lives.

properties.appliedScopeProperties

AppliedScopeProperties

Properties specific to applied scope type. Not required if not applicable. Required and need to provide tenantId and managementGroupId if AppliedScopeType is ManagementGroup

properties.appliedScopeType

AppliedScopeType

Type of the Applied Scope.

properties.appliedScopes

string[]

List of the subscriptions that the benefit will be applied. Do not specify if AppliedScopeType is Shared. This property will be deprecated and replaced by appliedScopeProperties instead for Single AppliedScopeType.

properties.billingPlan

ReservationBillingPlan

Represent the billing plans.

properties.billingScopeId

string

Subscription that will be charged for purchasing reservation or savings plan

properties.displayName

string

Friendly name of the reservation

properties.quantity

integer (int32)

Quantity of the skus that are part of the reservation.

properties.renew

boolean

False

Setting this to true will automatically purchase a new reservation on the expiration date time.

properties.reservedResourceProperties

ReservedResourceProperties

Properties specific to each reserved resource type. Not required if not applicable.

properties.reservedResourceType

ReservedResourceType

The type of the resource that is being reserved. In addition to below types we have also added the following: OpenAIPTU, MDC, Sentinel.

properties.reviewDateTime

string (date-time)

This is the date-time when the Azure hybrid benefit needs to be reviewed.

properties.term

ReservationTerm

Represent the term of reservation.

sku

SkuName

The name of sku

ReservationBillingPlan

Represent the billing plans.

Value Description
Upfront
Monthly

ReservationStatusCode

Value Description
None
Pending
Processing
Active
PurchaseError
PaymentInstrumentError
Split
Merged
Expired
Succeeded

ReservationTerm

Represent the term of reservation.

Value Description
P1Y
P3Y
P5Y

ReservedResourceProperties

Properties specific to each reserved resource type. Not required if not applicable.

Name Type Description
instanceFlexibility

InstanceFlexibility

Turning this on will apply the reservation discount to other VMs in the same VM size group. Only specify for VirtualMachines reserved resource type.

ReservedResourceType

The type of the resource that is being reserved. In addition to below types we have also added the following: OpenAIPTU, MDC, Sentinel.

Value Description
VirtualMachines
SqlDatabases
SuseLinux
CosmosDb
RedHat
SqlDataWarehouse
VMwareCloudSimple
RedHatOsa
Databricks
AppService
ManagedDisk
BlockBlob
RedisCache
AzureDataExplorer
MySql
MariaDb
PostgreSql
DedicatedHost
SapHana
SqlAzureHybridBenefit
AVS
DataFactory
NetAppStorage
AzureFiles
SqlEdge
VirtualMachineSoftware

SkuName

The name of sku

Name Type Description
name

string