---
title: "PATCH /providers/Microsoft.BillingBenefits/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}"
method: PATCH
path: "/providers/Microsoft.BillingBenefits/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}"
tags: ["SavingsPlanModels"]
---

# PATCH /providers/Microsoft.BillingBenefits/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}

`PATCH /providers/Microsoft.BillingBenefits/savingsPlanOrders/{savingsPlanOrderId}/savingsPlans/{savingsPlanId}`

Update savings plan.

## Path parameters

- `savingsPlanOrderId` string, required
- `savingsPlanId` string, required

## Parameters

- `../../../../../common-types/resource-management/v6/types.json#/components/parameters/ApiVersionParameter` — unresolved $ref

## Request body

- SavingsPlanUpdateRequest — Savings plan patch request
  - `properties` SavingsPlanUpdateRequestProperties — Savings plan patch request
    - `displayName` string — Display name
    - `appliedScopeType` 'Single' | 'Shared' | 'ManagementGroup' — Type of the Applied Scope.
    - `appliedScopeProperties` AppliedScopeProperties — Properties specific to applied scope type. Not required if not applicable.
      - `tenantId` string — Tenant ID where the benefit is applied.
      - `managementGroupId` string — Fully-qualified identifier of the management group where the benefit must be applied.
      - `subscriptionId` string — Fully-qualified identifier of the subscription.
      - `resourceGroupId` string — Fully-qualified identifier of the resource group.
      - `displayName` string — Display name
      - `benefitFilter` string — A filter string passed to downstream services to categorize and apply usage benefits to specific resource models. Expected format: "key/value" (e.g., "contractId/2025 H2CPU"). The value is not validated by BillingBenefits and is forwarded as-is.
    - `renew` boolean — Setting this to true will automatically purchase a new benefit on the expiration date time.
    - `renewProperties` RenewProperties
      - `purchaseProperties` PurchaseRequest
        - `sku` ResourceSku
          - `name` string
        - `properties` PurchaseRequestProperties
          - `displayName` string — Friendly name of the savings plan
          - `billingScopeId` string — Subscription that will be charged for purchasing the benefit
          - `term` 'P1M' | 'P1Y' | 'P3Y' | 'P5Y' — Represent benefit term in ISO 8601 format.
          - `billingPlan` 'P1M' — Represents the billing plan in ISO 8601 format. Required only for monthly billing plans.
          - `appliedScopeType` 'Single' | 'Shared' | 'ManagementGroup' — Type of the Applied Scope.
          - `commitment` Commitment
            - `currencyCode` string — The ISO 4217 3-letter currency code for the currency used by this purchase record.
            - `amount` number, double
          - `effectiveDateTime` string, date-time — DateTime of the savings plan starts providing benefit from.
          - `renew` boolean — Setting this to true will automatically purchase a new benefit on the expiration date time.
          - `renewAction` 'CreateNew' | 'RenewExisting' — Represents the renewal action for a reservation to be a new purchase or existing renewal.
          - `appliedScopeProperties` AppliedScopeProperties — Properties specific to applied scope type. Not required if not applicable.
            - `tenantId` string — Tenant ID where the benefit is applied.
            - `managementGroupId` string — Fully-qualified identifier of the management group where the benefit must be applied.
            - `subscriptionId` string — Fully-qualified identifier of the subscription.
            - `resourceGroupId` string — Fully-qualified identifier of the resource group.
            - `displayName` string — Display name
            - `benefitFilter` string — A filter string passed to downstream services to categorize and apply usage benefits to specific resource models. Expected format: "key/value" (e.g., "contractId/2025 H2CPU"). The value is not validated by BillingBenefits and is forwarded as-is.

## Response `200`

Azure operation completed successfully.

- SavingsPlanModel — unresolved $ref

## Other responses

- `202` — Resource operation accepted.
- `404` — ARM not found response
- `default` — An unexpected error response.

---

[API](https://skmtc.net/azure/apis/billingbenefits-microsoft-billingbenefits.md) · [All operations](https://skmtc.net/azure/apis/billingbenefits-microsoft-billingbenefits/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/azure/billingbenefits-microsoft-billingbenefits/revisions/72b283f1b8d9/schema)
