{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/amazon-billing-and-cost-management/json-schema/amazon-billing-and-cost-management-get-enterprise-support-charge-summary-response-schema.json",
  "title": "GetEnterpriseSupportChargeSummaryResponse",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/amazon-billing-and-cost-management-operations-api-openapi.yml#/components/schemas/GetEnterpriseSupportChargeSummaryResponse",
  "type": "object",
  "properties": {
    "payerAccountId": {
      "type": "string",
      "description": "The payer account ID that is authorized to view Enterprise Support data for all accounts in its Support profile."
    },
    "billingMonth": {
      "type": "string",
      "description": "The billing month in YYYY-MM format. This must be a month in the past."
    },
    "billingPeriodStartDate": {
      "type": "string",
      "description": "The start date of the billing period."
    },
    "billingPeriodEndDate": {
      "type": "string",
      "description": "The end date of the billing period."
    },
    "isEstimated": {
      "type": "boolean",
      "description": "Specifies whether the Support charge amount is estimated. When false, the charge amount is finalized."
    },
    "billDate": {
      "type": "string",
      "description": "The date the bill was generated."
    },
    "supportCharge": {
      "type": "string",
      "description": "The Support charge amount for the account."
    },
    "totalSupportCharge": {
      "type": "string",
      "description": "The total Support charge amount for all accounts in the Support profile."
    },
    "supportDiscount": {
      "type": "string",
      "description": "The support discount amount."
    },
    "totalSupportEligibleSpend": {
      "type": "string",
      "description": "The total Support-eligible Spend from all accounts in the Support profile. This includes eligible spend from usage of Amazon Web Services, Reserved Instances, and Savings Plans."
    },
    "totalSupportEligibleUsageSpend": {
      "type": "string",
      "description": "The total Support-eligible spend from usage of Amazon Web Services from all accounts in the Support profile."
    },
    "totalSupportEligibleReservedInstanceSpend": {
      "type": "string",
      "description": "The total Support-eligible Reserved Instance spend from all accounts in the Support profile."
    },
    "totalSupportEligibleSavingsPlanSpend": {
      "type": "string",
      "description": "The total Support-eligible Savings Plan spend from all accounts in the Support profile."
    },
    "supportChargePercentage": {
      "type": "string",
      "description": "The percentage applied to the total Support-eligible spend to calculate the total Support charge across all accounts in the Support profile."
    },
    "supportEffectivePricingPlan": {
      "$ref": "#/$defs/PricingPlan"
    }
  },
  "required": [
    "payerAccountId",
    "billingMonth",
    "billingPeriodStartDate",
    "billingPeriodEndDate",
    "isEstimated",
    "billDate",
    "supportCharge",
    "totalSupportCharge",
    "supportDiscount",
    "totalSupportEligibleSpend",
    "totalSupportEligibleUsageSpend",
    "totalSupportEligibleReservedInstanceSpend",
    "totalSupportEligibleSavingsPlanSpend",
    "supportChargePercentage",
    "supportEffectivePricingPlan"
  ],
  "$defs": {
    "PricingPlan": {
      "type": "object",
      "properties": {
        "pricingPlanId": {
          "type": "string",
          "description": "The unique identifier for the pricing plan."
        },
        "name": {
          "type": "string",
          "description": "The name of the pricing plan."
        },
        "description": {
          "type": "string",
          "description": "A description of the pricing plan."
        },
        "startDate": {
          "type": "string",
          "description": "The start date of the pricing plan."
        },
        "endDate": {
          "type": "string",
          "description": "The end date of the pricing plan."
        },
        "planDiscountPercent": {
          "type": "string",
          "description": "The discount percentage applied by this pricing plan."
        },
        "discountAppliesToMinimumCharge": {
          "type": "boolean",
          "description": "Whether the discount applies to the minimum Support charge."
        },
        "minimumCharge": {
          "type": "string",
          "description": "The minimum Support charge amount for this pricing plan."
        },
        "tiered": {
          "type": "string",
          "description": "Whether the pricing plan uses tiered pricing."
        },
        "tiers": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/PricingPlanTier"
          },
          "description": "The pricing tiers within this plan."
        }
      },
      "required": [
        "tiers"
      ]
    },
    "PricingPlanTier": {
      "type": "object",
      "properties": {
        "tierMinimum": {
          "type": "string",
          "description": "The minimum spend threshold for this tier."
        },
        "tierMaximum": {
          "type": "string",
          "description": "The maximum spend threshold for this tier."
        },
        "baseCharge": {
          "type": "string",
          "description": "The base charge for this tier."
        },
        "additionalPercentageOfAggregateCharges": {
          "type": "string",
          "description": "The additional percentage applied to aggregate charges in this tier."
        },
        "aggregateChargesAdjustment": {
          "type": "string",
          "description": "The adjustment applied to aggregate charges."
        },
        "incremental": {
          "type": "boolean",
          "description": "Whether the tier charges are calculated incrementally."
        },
        "increment": {
          "type": "string",
          "description": "The increment amount for incremental tier calculations."
        },
        "incrementCharge": {
          "type": "string",
          "description": "The charge per increment."
        }
      },
      "required": [
        "tierMinimum",
        "baseCharge",
        "additionalPercentageOfAggregateCharges",
        "aggregateChargesAdjustment",
        "incremental"
      ]
    }
  }
}