The JSON returned by the subscriptiondetails endpoint has the following structure.

Example response for a subscription with Resource Rate pricing (default setup).

{
  "Subscription": {
    "SubscriptionId": ......,
    "StartDate": "......",
    "ExpirationDate": "......",
    "Period": ......,
    "PeriodType": "......",
    "BillingPeriod": ......,
    "BillingPeriodType": "......"
  },
  "ServicePlan": {
    "PlanId": ......,
    "PlanName": [
      {
        "Value": "......",
        "Name": "......"
      },
      {
        "Value": "......",
        "Name": "......"
      },
    ],
    "PlanCategoryId": ......,
    "PlanCategoryName": "......"
  },
  "ServicePlanPeriod": {
    "PlanPeriodId": ......,
    "PlanPeriodSetupSKUName": "......",
    "PlanPeriodSubscriptionSKUName": "......",
    "PlanPeriodRenewalSKUName": "......",
    "PlanPeriodTransferSKUName": "......",
    "PlanPeriodCancellationSKUName": "......"
  },
  "Resources": [
    {
      "ResourceRate": {
        "PlanRateId": ......,
        "PlanRateSetupSKUName": "......",
        "PlanRateRecurringSKUName": "......",
        "PlanRateOveruseSKUName": "......",
        "PlanRateCancellationSKUName": "......"
      },
      "ResourceId": ......,
      "ResourceName": [
        {
          "Value": "......",
          "Name": "......"
        },
        {
          "Value": "......",
          "Name": "......"
        },
      ],
      "IncludedValue": ......,
      "Amount": ......,
      "Manufacturer": "......",
      "ManufacturerName": "......",
      "MPNumber": "......",
      "MeasureUnit": [
        {
          "Value": "......",
          "Name": "......"
        },
        {
          "Value": "......",
          "Name": "......"
        },
      ]
    },
    {
      "ResourceRate": {
        "PlanRateId": ......,
        "PlanRateSetupSKUName": "......",
        "PlanRateRecurringSKUName": "......",
        "PlanRateOveruseSKUName": "......",
        "PlanRateCancellationSKUName": "......"
      },
      "ResourceId": ......,
      "ResourceName": [
        {
          "Value": "......",
          "Name": "......"
        },
        {
          "Value": "......",
          "Name": "......"
        },
      ],
      "IncludedValue": ......,
      "Amount": ......,
      "Manufacturer": "......",
      "ManufacturerName": "......",
      "MPNumber": "......",
      "MeasureUnit": [
        {
          "Value": "......",
          "Name": "......"
        },
        {
          "Value": "......",
          "Name": "......"
        },
      ]
    }
  ]
}
JSON

Subscriptiondetails JSON structure

Subscription

Element containing information about the subscription requested.

The Subscription element has the following attributes:

SubscriptionId The identifying number of the subscription, like 1116713

StartDate The Subscription start date, like 14-dec-2021

ExpirationDate The end date of the current subscription period, like 14-apr-2022

Period The number of subscription periods, like 1

PeriodType The duration of the subscription period, like DAY(S), MONTH(S) or YEAR(S)

BillingPeriod The number of billing periods, like 1

BillingPeriodType The duration of the billing period, like DAY(S), MONTH(S) or YEAR(S)

ServicePlan

Element with information about the service plan on which the specified subscription is based on. A service plan defines the complete product and pricing to which you are subscribed to.

The ServicePlan element has the following attributes:

PlanId Internal Identifier of the Serviceplan. This ID is unique for each reseller, like 405289

PlanName This header element contains a list of names given to the service plan in different languages.

Value Identifier of the language, like en, nl or fr
Name The given name that is specific to the language, like Microsoft 365 Business Premium


PlanCategoryId Internal identifier for the product category to which the service plan belongs. This value is unique for each reseller, like 11546

PlanCategoryName Given name to the product category, like Microsoft Cloud | Office 365

ServicePlanPeriod

Element with information about the period on which the specified subscription is based. A service plan period defines the price and SKU number for included (bundled) resources, as well as the subscription period. Based on the Plan configuration, it is possible that no licenses are included. In this case price and SKU’s are empty/not used or the product is defined as a bundle product by the vendor.

The ServicePlanPeriod element has the following attributes:

PlanPeriodId Internal Identifier of the Service Plan Period. This ID is unique for each reseller, like 694081

PlanPeriodSetupSKUName The name of the SKU that a reseller has assigned to the plan period Setup SKU. Setup fees are used for “one-time billing“ items on subscription creation. This value is empty by default.

PlanPeriodSubscriptionSKUName The name of the SKU that a reseller has assigned to the plan period Recurring SKU. Recurring fees are used for monthly/yearly billing and will be rebilled on every subscription renewal. This value is empty by default.

PlanPeriodRenewalSKUName The name of the SKU that a reseller has assigned to the plan period Renewal SKU. Renewal fees are used only for Domain registration subscriptions. This fee is charged on your domain renewal. This value is empty by default.

PlanPeriodTransferSKUName The name of the SKU that a reseller has assigned to the plan period Transfer SKU. Transfer fees are used only for Domain registration subscriptions. This fee is charged if you transfer in a domain to the Cloud Platform, and is a one-time fee. This value is empty by default.

PlanPeriodCancellationSKUName The name of the SKU that a reseller has assigned to the plan period Cancelation SKU. Cancelation fees are used for one-time billing for a cancelation of a subscription in case this applies to the product. This value is empty by default.

Resources

Header element containing information about one or more resources that are active in your subscription.

The Resources element has the following attributes:

ResourceId Internal Identifier of the resource in the platform. This value is global and the same for all accounts, like 101244

ResourceName This header element contains a list of names given to the resource in different languages.

Value Identifier of the language, like en, nl or fr
Name The given name that is specific to the language, like Microsoft 365 Business Premium


IncludedValue The amount of this resource that is included in the base service plan period price/SKU, like 1

Amount The amount of this resource that is additionally purchased in your subscription. For the additional resources, the ResourceRate or ResourceRatePeriod price/SKU is used, like 40

Manufacturer Contains the vendor identifier number that provides this resource.

ManufacturerName Contains the vendor name that provides this resource.

MPNumber Contains the resource external ID that is used by the vendor.

MeasureUnit This header element contains a list of names given to the Unit of Measure in different languages for this resource.

Value Identifier of the language, like en, nl or fr
Name The given name that is specific to the language, like License or Unit

ResourceRate

Header element containing information about Pricing/Sku’s of a specific resource that is active in your subscription. The ResourceRate element contains the information that is valid for all subscription periods. In case this resource contains more specific ResourceRatePeriod pricing/SKU’s this element will not be returned by the API because it is overwritten.

The ResourceRate element has the following attributes:

PlanRateId Internal Identifier of the resourcerate in the platform. This ID is unique for each reseller, like 1672277

PlanRateSetupSKUName The name of the SKU that a reseller has assigned to the resource rate Setup SKU. Setup fees are used for “one-time billing“ items on resource orders. This value is empty by default.

PlanRateRecurringSKUName The name of the SKU that a reseller has assigned to the resource rate Recurring SKU. Recurring fees are used for monthly/yearly billing and will be rebilled on every subscription renewal. This value is empty by default.

PlanRateOveruseSKUName The name of the SKU that a reseller has assigned to the resource rate Overusage SKU. Overusage fees are used for billing of resource fees that are used more than that was pre-ordered. This can happen in case of a pay-as-you-go product configuration. This value is empty by default.

PlanRateCancellationSKUName The name of the SKU that a reseller has assigned to the resource rate Cancelation SKU. Cancelation fees are used for one-time billing for a cancelation of a subscription in case this applies to the product. This value is empty by default.

ResourceRatePeriod

Header element containing information about Pricing/Sku’s of a specific resource that is active in your subscription. The ResourceRatePeriod element contains the information that is valid for one specific subscription period. This element is only returned as a replacement for the ResourceRate element in case the product has more than one period with different prices per period.

The ResourceRatePeriod element has the following attributes:

RatePeriodId Internal Identifier of the resource rate period in the platform. This ID is unique for each reseller, like 16722456

PlanRatePeriodSetupSKUName The name of the SKU that a reseller has assigned to the resource rate period Setup SKU. Setup fees are used for “one-time billing“ items on resource orders. This value is empty by default.

PlanRatePeriodRecurringSKUName The name of the SKU that a reseller has assigned to the resource rate period Recurring SKU. Recurring fees are used for monthly/yearly billing and will be rebilled on every subscription renewal. This value is empty by default.

PlanRatePeriodOveruseSKUName The name of the SKU that a reseller has assigned to the resource rate period Overusage SKU. Over usage fees are used for billing of resource fees that are used more than what was pre-ordered. This can happen in the case of a pay-as-you-go product configuration. This value is empty by default.

PlanRatePeriodCancellationSKUName The name of the SKU that a reseller has assigned to the resource rate period Cancelation SKU. Cancelation fees are used for one-time billing for a cancelation of a subscription in case this applies to the product. This value is empty by default.

Products with different prices per subscription period

In the case of products with specific Resource Rate Period pricing (where product prices differ based on the chosen Subscription Period), the following ResourceRate section is omitted. This will happen for products like Microsoft NCE licenses. This omitted section is then replaced with a more specific ResourceRatePeriod details section.

Example of the missing section that will not be returned if Resource Rate Period prices are configured.

"ResourceRate": {
        "PlanRateId": ......,
        "PlanRateSetupSKUName": "......",
        "PlanRateRecurringSKUName": "......",
        "PlanRateOveruseSKUName": "......",
        "PlanRateCancellationSKUName": "......"
      }
JSON


Example response for a subscription with Resource Rate Period pricing.

"ResourceRatePeriod": {
        "RatePeriodId": ......,
        "PlanRatePeriodSetupSKUName": "......",
        "PlanRatePeriodRecurringSKUName": "......",
        "PlanRatePeriodOveruseSKUName": "......",
        "PlanRatePeriodCancellationSKUName": "......"
      }
JSON