{
    "openapi":"3.0.1",
    "info":{
        "title":"REST API Reference for Pricing Design Center",
        "version":"2026.03.30",
        "description":"The Pricing Design Center (PDC) REST API allows you to manage pricing objects, such as charge offers, discount offers, and packages, in PDC and BRM. It uses PDC server core APIs to manage PDC objects internally.",
        "x-summary":"The Pricing Design Center (PDC) REST API allows you to manage pricing objects, such as charge offers, discount offers, and packages, in PDC and BRM."
    },
    "tags":[
        {
            "name":"PDC Pricing Management"
        }
    ],
    "paths":{
        "/pdc/pricing":{
            "post":{
                "tags":[
                    "PDC Pricing Management"
                ],
                "summary":"Create Pricing Object",
                "description":"Creates a new pricing object using the criteria provided in the request body.",
                "operationId":"createPricing",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PricingObjectsJXB"
                            },
                            "example":{
                                "chargeRatePlan":[
                                    {
                                        "name":"sample_CRP_jan27",
                                        "pricingProfileName":"Subscription",
                                        "priceListName":"Default",
                                        "obsolete":false,
                                        "applicableRums":[
                                            "Occurrence"
                                        ],
                                        "applicableQuantity":"ORIGINAL",
                                        "taxTime":"NONE",
                                        "todMode":"START_TIME",
                                        "applicableQtyTreatment":"CONTINUOUS",
                                        "permittedName":"TelcoGsmTelephony",
                                        "permittedType":"PRODUCT",
                                        "eventName":"EventBillingProductFeeCycleCycle_forward_monthly",
                                        "cycleFeeFlag":0,
                                        "billOffset":0,
                                        "subscriberCurrency":[
                                            {
                                                "currencyCode":[
                                                    "USD"
                                                ],
                                                "crpRelDateRange":[
                                                    {
                                                        "absoluteDateRange":{
                                                            "startDate":0,
                                                            "endDate":"inf"
                                                        },
                                                        "crpCompositePopModel":{
                                                            "name":"Pricing",
                                                            "recurringPopModel":{
                                                                "priceTier":{
                                                                    "lowerBound":"NO_MIN",
                                                                    "tierBasis":{
                                                                        "rumTierExpression":{
                                                                        }
                                                                    },
                                                                    "rumName":"Occurrence",
                                                                    "enforceCreditLimit":"NORMAL",
                                                                    "tierRange":[
                                                                        {
                                                                            "upperBound":"NO_MAX",
                                                                            "recurringCharge":[
                                                                                {
                                                                                    "price":10,
                                                                                    "unitOfMeasure":"NONE",
                                                                                    "balanceElementNumCode":840,
                                                                                    "discountable":true,
                                                                                    "priceType":"CONSUMPTION",
                                                                                    "proratable":true,
                                                                                    "impactType":"SCALED"
                                                                                }
                                                                            ]
                                                                        }
                                                                    ]
                                                                }
                                                            }
                                                        }
                                                    }
                                                ]
                                            }
                                        ]
                                    }
                                ],
                                "chargeOffering":[
                                    {
                                        "name":"sample_CO_jan27",
                                        "pricingProfileName":"Product Offering",
                                        "priceListName":"Default",
                                        "obsolete":false,
                                        "timeRange":"0/inf",
                                        "productSpecName":"TelcoGsmTelephony",
                                        "offerType":"SUBSCRIPTION",
                                        "priority":0,
                                        "partial":false,
                                        "purchaseMin":-1,
                                        "purchaseMax":-1,
                                        "ownMin":-1,
                                        "ownMax":-1,
                                        "applicableQuantity":"REMAINING",
                                        "purchaseCycleDOM":0,
                                        "expiryNotification":true,
                                        "subscriptionDueNotification":true,
                                        "dateRangeImpactType":"EVENT_DATE",
                                        "groupSharingEnabled":false,
                                        "validityRounding":"off",
                                        "scaleRounding":"off",
                                        "chargeEventMap":[
                                            {
                                                "eventName":"EventBillingProductFeeCycleCycle_forward_monthly",
                                                "validIfCancelled":true,
                                                "validIfInactive":true,
                                                "validIfSuspendedActive":true,
                                                "timezoneMode":"EVENT",
                                                "minQuantity":0,
                                                "minQuantityUnit":"NONE",
                                                "incrementQuantity":1,
                                                "incrementQuantityUnit":"NONE",
                                                "roundingMode":"NEAREST",
                                                "prorateFirst":"PRORATE_CHARGE",
                                                "prorateLast":"PRORATE_CHARGE",
                                                "prorateCycle":"PRORATE_CHARGE",
                                                "chargeRatePlanInfo":{
                                                    "targetEngine":[
                                                        "RRE"
                                                    ]
                                                },
                                                "chargeRatePlanName":"sample_CRP_jan27"
                                            }
                                        ]
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses":{
                    "201":{
                        "description":"The pricing object was created successfully."
                    },
                    "400":{
                        "description":"The request isn't valid."
                    },
                    "500":{
                        "description":"An internal service error occurred."
                    }
                },
                "x-internal-id":"pdc-pricing-post",
                "x-filename-id":"pdc-pricing-post"
            },
            "get":{
                "tags":[
                    "PDC Pricing Management"
                ],
                "summary":"Get Pricing Object",
                "description":"Gets one or more pricing objects. You can retrieve all pricing data in your system or add query parameters to retrieve a specific pricing object.",
                "operationId":"getPricing",
                "parameters":[
                    {
                        "description":"The name of the pricing object.",
                        "in":"query",
                        "name":"name",
                        "schema":{
                            "type":"string"
                        }
                    },
                    {
                        "description":"The type of pricing object. <p>Valid pricing objects&colon; <b>ALTERATION_RATE_PLAN</b>, <b>CHARGE_RATE_PLAN</b>, <b>DISTRIBUTION_RATE_PLAN</b>, <b>ROLLOVER_RATE_PLAN</b>, <b>ATTRIBUTE_ANALYZER_MODEL</b>, <b>ALTERATION_RATE_PLAN_SELECTOR</b>, <b>CHARGE_RATE_PLAN_SELECTOR</b>, <b>PRICE_MODEL_SELECTOR</b>, <b>TIME_MODEL</b>, <b>TRIGGER_SPEC</b>, <b>CHARGE_SELECTOR_SPEC</b>, <b>CHARGE_OFFERING</b>, <b>ALTERATION_OFFERING</b>, <b>DISTRIBUTION_OFFERING</b>, <b>PRICE_MODEL</b>, <b>PACKAGE_OBJ</b>, <b>PACKAGE_LIST</b>, <b>ALTERATION_EXCLUSION</b>, <b>PACKAGE_EXCLUSION</b>, <b>PACKAGE_TRANSITION</b>, <b>BUNDLE_TRANSITION</b>, <b>BEST_PRICING</b>, <b>BUNDLED_PRODUCT_OFFERING</b>, <b>BUNDLE_DEPENDENCY</b>, <b>GENERIC_SELECTOR</b>, <b>TAX_SELECTOR</b>, <b>TAX_EXEMPTION_SELECTOR</b>, <b>APN_MAP</b>, <b>USC_MAP</b>, <b>SUBSCRIPTION_TERMS</b>, or <b>SUBSCRIPTION_TERMS_AUTO_RENEW</b><p>Valid pricing configuration objects&colon; <b>ZONE_RESULT_CONFIGURATION</b>, <b>VALUE_MAP</b>, <b>STANDARD_ZONE_MODEL</b>, <b>GEO_ZONE_MODEL</b>, <b>BALANCE_ELEMENT</b>, <b>RUM_CONFIGURATION</b>, <b>HOLIDAY_CALENDAR</b>, <b>ATTRIBUTE_SPEC_MAP</b>, <b>BUSINESS_PROFILE</b>, <b>ITEM_TYPE_SELECTOR</b>, <b>CUSTOM_ANALYZER_RULE</b>, <b>POLICY_SPECIFICATION</b>, <b>DYNAMIC_QUOTA_SELECTOR</b>, <b>POLICY_LABEL</b>, <b>DELIVERABLE</b>, <b>PSCTEMPLATE</b>, <b>TAX_CODE</b>, <b>TAX_EXEMPTION_CODE</b>, or <b>PRICE_TAG_CONFIG</b>.",
                        "in":"query",
                        "name":"type",
                        "schema":{
                            "type":"string"
                        }
                    },
                    {
                        "description":"Whether to include referenced objects in the response payload&colon; <b>true</b> or <b>false</b>.",
                        "in":"query",
                        "required":false,
                        "name":"includeReferences",
                        "schema":{
                            "type":"string"
                        }
                    }
                ],
                "responses":{
                    "200":{
                        "content":{
                            "application/json":{
                                "schema":{
                                    "$ref":"#/components/schemas/PricingObjectsJXB"
                                }
                            }
                        },
                        "description":"The pricing objects were returned successfully."
                    },
                    "400":{
                        "description":"The query parameter isn't valid."
                    },
                    "500":{
                        "description":"An internal server error occurred."
                    }
                },
                "x-internal-id":"pdc-pricing-get",
                "x-filename-id":"pdc-pricing-get"
            },
            "put":{
                "tags":[
                    "PDC Pricing Management"
                ],
                "summary":"Update Pricing Objects",
                "description":"Updates the specified pricing objects.",
                "operationId":"updatePricing",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PricingObjectsJXB"
                            }
                        }
                    }
                },
                "responses":{
                    "200":{
                        "description":"The pricing objects were updated successfully."
                    },
                    "400":{
                        "description":"The JSON payload isn't valid."
                    },
                    "500":{
                        "description":"An internal server error occurred."
                    }
                },
                "x-internal-id":"pdc-pricing-put",
                "x-filename-id":"pdc-pricing-put"
            },
            "patch":{
                "tags":[
                    "PDC Pricing Management"
                ],
                "summary":"Partially Update Pricing Objects",
                "description":"Updates a subset of attributes in the pricing object you specify.<p>You must pass the <b>type</b> query parameter set to the type of pricing object to update. The request payload must include the attributes you want to update and one of the following attributes&colon; \n<ul>\n  <li><b>name</b>: The pricing object's name.</li>\n  <li><b>internalId</b>: The unique ID (UUID) internally generated by Pricing Design Center when the pricing configuration was committed. You must include this attribute to update the name of the pricing object.</li>\n</ul>\n",
                "operationId":"updatePartialPricing",
                "requestBody":{
                    "required":true,
                    "content":{
                        "application/json":{
                            "schema":{
                                "$ref":"#/components/schemas/PricingObjectsJXB"
                            },
                            "example":{
                                "example-1":{
                                    "chargeOffering":[
                                        {
                                            "name":"co_test_patch_1",
                                            "description":"update description for patch test 1",
                                            "pricingProfileName":"Product Offering"
                                        },
                                        {
                                            "name":"update_name_co_test_patch_2",
                                            "internalId":"62b19477-84ef-45f8-ae6c-d76df43e8750",
                                            "description":"udpate description for patch test 2",
                                            "pricingProfileName":"Product Offering"
                                        }
                                    ]
                                },
                                "example-2":{
                                    "chargeOffering":[
                                        {
                                            "name":"co_test_patch_1",
                                            "description":"description for patch test 1",
                                            "pricingProfileName":"Product Offering",
                                            "chargeEventMap":[
                                                {
                                                    "eventName":"EventBillingProductFeeCycleCycle_forward_monthly",
                                                    "validIfCancelled":true,
                                                    "validIfInactive":true,
                                                    "validIfSuspendedActive":true,
                                                    "timezoneMode":"EVENT",
                                                    "minQuantity":0,
                                                    "minQuantityUnit":"NONE",
                                                    "incrementQuantity":1,
                                                    "incrementQuantityUnit":"NONE",
                                                    "roundingMode":"NEAREST",
                                                    "prorateFirst":"PRORATE_CHARGE",
                                                    "prorateLast":"PRORATE_CHARGE",
                                                    "prorateCycle":"PRORATE_CHARGE",
                                                    "chargeRatePlanInfo":{
                                                        "targetEngine":[
                                                            "RRE"
                                                        ]
                                                    },
                                                    "chargeRatePlanName":"crp_test_patch_3"
                                                }
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    }
                },
                "parameters":[
                    {
                        "description":"The type of pricing object. <p>Valid pricing objects&colon; <b>ALTERATION_RATE_PLAN</b>, <b>CHARGE_RATE_PLAN</b>, <b>DISTRIBUTION_RATE_PLAN</b>, <b>ROLLOVER_RATE_PLAN</b>, <b>ATTRIBUTE_ANALYZER_MODEL</b>, <b>ALTERATION_RATE_PLAN_SELECTOR</b>, <b>CHARGE_RATE_PLAN_SELECTOR</b>, <b>PRICE_MODEL_SELECTOR</b>, <b>TIME_MODEL</b>, <b>TRIGGER_SPEC</b>, <b>CHARGE_SELECTOR_SPEC</b>, <b>CHARGE_OFFERING</b>, <b>ALTERATION_OFFERING</b>, <b>DISTRIBUTION_OFFERING</b>, <b>PRICE_MODEL</b>, <b>PACKAGE_OBJ</b>, <b>PACKAGE_LIST</b>, <b>ALTERATION_EXCLUSION</b>, <b>PACKAGE_EXCLUSION</b>, <b>PACKAGE_TRANSITION</b>, <b>BUNDLE_TRANSITION</b>, <b>BEST_PRICING</b>, <b>BUNDLED_PRODUCT_OFFERING</b>, <b>BUNDLE_DEPENDENCY</b>, <b>GENERIC_SELECTOR</b>, <b>TAX_SELECTOR</b>, <b>TAX_EXEMPTION_SELECTOR</b>, <b>APN_MAP</b>, <b>USC_MAP</b>, <b>SUBSCRIPTION_TERMS</b>, or <b>SUBSCRIPTION_TERMS_AUTO_RENEW</b>.",
                        "in":"query",
                        "name":"type",
                        "schema":{
                            "type":"string"
                        },
                        "required":true
                    }
                ],
                "responses":{
                    "200":{
                        "description":"The pricing objects were updated successfully."
                    },
                    "400":{
                        "description":"The JSON payload isn't valid."
                    },
                    "500":{
                        "description":"An internal server error occurred."
                    }
                },
                "x-internal-id":"pdc-pricing-patch",
                "x-filename-id":"pdc-pricing-patch"
            }
        },
        "/pdc/pricing/{id}":{
            "delete":{
                "tags":[
                    "PDC Pricing Management"
                ],
                "summary":"Delete Pricing Object by ID",
                "description":"Deletes the pricing object that matches the specified ID.",
                "operationId":"deletePricing",
                "parameters":[
                    {
                        "description":"The ID of the pricing object.",
                        "in":"path",
                        "name":"id",
                        "required":true,
                        "schema":{
                            "type":"string"
                        }
                    },
                    {
                        "description":"The type of pricing object or pricing configuration object. <p>Valid pricing objects&colon; <b>ALTERATION_RATE_PLAN</b>, <b>CHARGE_RATE_PLAN</b>, <b>DISTRIBUTION_RATE_PLAN</b>, <b>ROLLOVER_RATE_PLAN</b>, <b>ATTRIBUTE_ANALYZER_MODEL</b>, <b>ALTERATION_RATE_PLAN_SELECTOR</b>, <b>CHARGE_RATE_PLAN_SELECTOR</b>, <b>PRICE_MODEL_SELECTOR</b>, <b>TIME_MODEL</b>, <b>TRIGGER_SPEC</b>, <b>CHARGE_SELECTOR_SPEC</b>, <b>CHARGE_OFFERING</b>, <b>ALTERATION_OFFERING</b>, <b>DISTRIBUTION_OFFERING</b>, <b>PRICE_MODEL</b>, <b>PACKAGE_OBJ</b>, <b>PACKAGE_LIST</b>, <b>ALTERATION_EXCLUSION</b>, <b>PACKAGE_EXCLUSION</b>, <b>PACKAGE_TRANSITION</b>, <b>BUNDLE_TRANSITION</b>, <b>BEST_PRICING</b>, <b>BUNDLED_PRODUCT_OFFERING</b>, <b>BUNDLE_DEPENDENCY</b>, <b>GENERIC_SELECTOR</b>, <b>TAX_SELECTOR</b>, <b>TAX_EXEMPTION_SELECTOR</b>, <b>APN_MAP</b>, <b>USC_MAP</b>, <b>SUBSCRIPTION_TERMS</b>, or <b>SUBSCRIPTION_TERMS_AUTO_RENEW</b><p>Valid pricing configuration objects&colon; <b>ZONE_RESULT_CONFIGURATION</b>, <b>VALUE_MAP</b>, <b>STANDARD_ZONE_MODEL</b>, <b>GEO_ZONE_MODEL</b>, <b>BALANCE_ELEMENT</b>, <b>RUM_CONFIGURATION</b>, <b>HOLIDAY_CALENDAR</b>, <b>ATTRIBUTE_SPEC_MAP</b>, <b>BUSINESS_PROFILE</b>, <b>ITEM_TYPE_SELECTOR</b>, <b>CUSTOM_ANALYZER_RULE</b>, <b>POLICY_SPECIFICATION</b>, <b>DYNAMIC_QUOTA_SELECTOR</b>, <b>POLICY_LABEL</b>, <b>DELIVERABLE</b>, <b>PSCTEMPLATE</b>, <b>TAX_CODE</b>, <b>TAX_EXEMPTION_CODE</b>, or <b>PRICE_TAG_CONFIG</b>.",
                        "in":"query",
                        "name":"type",
                        "schema":{
                            "type":"string"
                        }
                    }
                ],
                "responses":{
                    "204":{
                        "description":"The pricing object was deleted successfully."
                    },
                    "404":{
                        "description":"The pricing object couldn't be found."
                    },
                    "500":{
                        "description":"An internal server error occurred."
                    }
                },
                "x-internal-id":"pdc-pricing-{id}-delete",
                "x-filename-id":"pdc-pricing-id-delete"
            }
        }
    },
    "security":[
        {
            "BasicAuthentication":[
            ]
        }
    ],
    "components":{
        "securitySchemes":{
            "BasicAuthentication":{
                "type":"http",
                "scheme":"basic"
            }
        },
        "schemas":{
            "PriceModelJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"PriceModelJXB",
                        "description":"The price model name."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"New name for the price model."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Price model's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"lastModifiedDate",
                        "description":"The date the object was last modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"lastModifiedUser",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"The unique ID (UUID) internally generated by Pricing Design Center while the pricing configuration is commited."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The name of the current state of the object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "alterationPopModel":{
                        "$ref":"#/components/schemas/AlterationPopModelJXB"
                    },
                    "oneTimePopModel":{
                        "$ref":"#/components/schemas/OneTimePopModelJXB"
                    },
                    "recurringPopModel":{
                        "$ref":"#/components/schemas/RecurringPopModelJXB"
                    },
                    "replacementPopModel":{
                        "$ref":"#/components/schemas/ReplacementPopModelJXB"
                    },
                    "rolloverPopModel":{
                        "$ref":"#/components/schemas/RolloverPopModelJXB"
                    },
                    "usageChargePopModel":{
                        "$ref":"#/components/schemas/UsageChargePopModelJXB"
                    },
                    "externalID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "TimeModelJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The time model's name."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"New name for the time model."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The time model's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modification user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"The unique ID (UUID) internally generated by Pricing Design Center while the pricing configuration is commited."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The name of the current state of the object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "holidayCalendarName":{
                        "type":"string",
                        "title":"holidaycalendarname",
                        "description":"Specifies the special day calendar name used in this time model. A special day calendar is a set of dates (such as holidays) for which special prices apply to services."
                    },
                    "validityPeriod":{
                        "items":{
                            "$ref":"#/components/schemas/TimeModelValidityPeriodJXB"
                        },
                        "type":"array"
                    },
                    "externalID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "AttributeAnalyzerModelJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the attribute analyzer model."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"The new name for the object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The object's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modification user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"The unique ID (UUID) internally generated by Pricing Design Center while the pricing configuration is commited."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The name of the current state of the object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "stereoType":{
                        "$ref":"#/components/schemas/AAStereoTypeJXB"
                    },
                    "productSpecName":{
                        "type":"string",
                        "title":"productSpecName",
                        "description":"The name of the product specification."
                    },
                    "eventSpecName":{
                        "type":"string",
                        "title":"eventSpecName",
                        "description":"The name of the event specification."
                    },
                    "customerSpecName":{
                        "type":"string",
                        "title":"customerSpecName",
                        "description":"The name of the customer specification."
                    },
                    "validityPeriod":{
                        "items":{
                            "$ref":"#/components/schemas/AAValidityPeriodJXB"
                        },
                        "type":"array"
                    },
                    "modelData":{
                        "items":{
                            "$ref":"#/components/schemas/AAModelDataJXB"
                        },
                        "type":"array"
                    },
                    "externalID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "TriggerSpecJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the trigger specification."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"The new name for the trigger specification."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The object's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modification user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"The unique ID (UUID) internally generated by Pricing Design Center while the pricing configuration is commited."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The name of the current state of the object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "chargeTriggerExpressionOrQuantityTriggerExpressionOrBalanceTriggerExpression":{
                        "items":{
                            "$ref":"#/components/schemas/ATriggerExpressionJXB"
                        },
                        "type":"array"
                    },
                    "externalID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "ChargeSelectorSpecJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the char sele specification."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"The new name for the object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The description of the object."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modification user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"The unique ID (UUID) internally generated by Pricing Design Center while the pricing configuration is commited."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The name of the current state of the object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "validFrom":{
                        "type":"string",
                        "title":"validfrom",
                        "description":"Specifies the start date from which the charge share filter rule is valid. Uses the format YYYYMMDD."
                    },
                    "validTo":{
                        "type":"string",
                        "title":"validto",
                        "description":"Specifies the end date through which the charge share filter rule remains valid. Uses the format YYYYMMDD."
                    },
                    "rumName":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "description":"The name of the RUM."
                    },
                    "timeModelName":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "description":"The name of the time model."
                    },
                    "timeModelTagName":{
                        "type":"string",
                        "title":"timeModelTagName",
                        "description":"Specifies the name of the time model tag. Each time period within a time model has a unique name."
                    },
                    "zoneResult":{
                        "type":"string",
                        "title":"zoneresult",
                        "description":"Specifies the impact category used in the charge share filter to determine the event price from the zone model. The inner tag resultName contains the impact category name."
                    },
                    "genericSelectorResult":{
                        "type":"string",
                        "title":"genericSelectorResult",
                        "description":"Specifies the result of the generic selector rule used in the charge share filter to guide pricing."
                    },
                    "chargeRatePlanName":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "description":"The name of the rate plan."
                    },
                    "balanceElementNumCode":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "description":"The numeric code for the balance element."
                    },
                    "glid":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "description":"The general ledger (G/L) ID."
                    },
                    "zoneModelName":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "description":"The name of the zone model."
                    },
                    "priceModelName":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "description":"The name of the price model."
                    },
                    "eventConditions":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeSelectorEventConditionJXB"
                        },
                        "type":"array"
                    },
                    "pricingName":{
                        "type":"string",
                        "title":"pricingname",
                        "description":"The pricing name used to filter the charge for the charge share offer."
                    },
                    "externalID":{
                        "type":"string",
                        "description":"The ID assigned by an external application."
                    }
                },
                "type":"object"
            },
            "ChargeRatePlanJXB":{
                "description":"Refers to the charge rate plan pricing object.",
                "required":[
                    "name",
                    "pricingProfileName",
                    "applicableRums",
                    "eventName",
                    "subscriberCurrency"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the charge rate plan."
                    },
                    "newName":{
                        "type":"string",
                        "title":"new name",
                        "description":"The new name given to the already named charge rate plan."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Describes the charge rate plan."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"creation date",
                        "description":"Refers to the date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"creator",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modifier",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internal id",
                        "description":"The unique ID (UUID) internally generated by Pricing Design Center while the pricing configuration is commited."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"current state name",
                        "description":"The name of the current state of the charge rate plan."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"change set name",
                        "description":"The name of the Change set of the charge rate plan."
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricing profile name",
                        "description":"Name of the pricing profile. It determines the features supported for the charge based on the charge category and charge type."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"price list name",
                        "description":"Name of the price list. By default, this is configured as <i>Default</i>. Keep the value as <i>Default</i>."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"tax code",
                        "description":"The tax code used for the charge. You can use either this parameter or <b>TaxSelectorGroup</b> (name, id), however, you cannot use both at the same time."
                    },
                    "taxSelectorName":{
                        "type":"string",
                        "title":"tax selector name",
                        "description":"The name of the tax selector. The <b>TaxSelectorGroup</b> tag represents the tax selector information for the charge. You can use either <b>TaxSelector</b> or <b>TaxCode</b>, however, you cannot use both at the same time."
                    },
                    "taxSelectorIID":{
                        "type":"string",
                        "title":"tax selector id",
                        "description":"Refers to the tax selector's ID. The <b>TaxSelectorGroup</b> tag represents the tax selector information for the charge. You can use either <b>TaxSelector</b> or <b>TaxCode</b>, however, you cannot use both at the same time."
                    },
                    "applicableRums":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"applicable rums",
                        "description":"Displays the RUMs used in the charge. RUMs specify the units used to measure an event and how to calculate the measurement. For example, <b>occurence, duration</b>."
                    },
                    "applicableQuantity":{
                        "$ref":"#/components/schemas/ApplicableQuantityJXB",
                        "title":"applicable quantity",
                        "description":"Specifies how charge offer is applied on a chargable quantity. This can be <b>REMAINING</b> or <b>ORIGINAL</b> based on the type of charge offer."
                    },
                    "taxTime":{
                        "$ref":"#/components/schemas/TaxTimeJXB",
                        "title":"tax time",
                        "description":"Refers to the time when the charge is taxed."
                    },
                    "todMode":{
                        "$ref":"#/components/schemas/TODModeJXB",
                        "title":"tod mode",
                        "description":"Refers to the <i>Time Of Day</i> Mode. It indicates if events should be rated using <b>startTime</b>, <b>endTime</b>, or split to use both."
                    },
                    "applicableQtyTreatment":{
                        "$ref":"#/components/schemas/ApplicableQuantityTreatmentJXB",
                        "title":"applicable qty treatment",
                        "description":"Indicates if the applicable quantity should be treated as continuous or isolated."
                    },
                    "permittedName":{
                        "type":"string",
                        "title":"permitted name",
                        "description":"Refers to the service to which the charge applies."
                    },
                    "permittedType":{
                        "$ref":"#/components/schemas/PermittedTypeJXB",
                        "title":"permitted type",
                        "description":"Specifies whether it is a product or a customer type."
                    },
                    "eventName":{
                        "type":"string",
                        "title":"event name",
                        "description":"Refers to the name of the event. For example, <b>EventDelayedSessionTelcoGsm (/event/delayed/session/telco/gsm in BRM) is used for usage events, while EventBillingProductFeeCycleCycle_forward_monthly (/event/billing/product/fee/cycle/cycle_forward_monthly) represents a monthly recurring fee (in-advance)</b>."
                    },
                    "cycleFeeFlag":{
                        "type":"integer",
                        "title":"cycle fee flag",
                        "description":"Specifies how to align recurring charges. '0' for billing date, '1' puchase date."
                    },
                    "billOffset":{
                        "type":"integer",
                        "title":"bill offset",
                        "description":"Specifies the offset (number of days or months) to bill in advance."
                    },
                    "offsetUnit":{
                        "$ref":"#/components/schemas/BillOffsetUnitJXB",
                        "title":"offset unit",
                        "description":"Specifies the offset unit (in days or months) to bill in advance."
                    },
                    "ratePlanElement":{
                        "$ref":"#/components/schemas/ARatePlanElementJXB",
                        "title":null,
                        "description":null
                    },
                    "subscriberCurrency":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateSubscriberCurrencyRPEJXB"
                        },
                        "type":"array"
                    },
                    "applicableRum":{
                        "items":{
                            "$ref":"#/components/schemas/ApplicableRumRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) You use RUMs to measure events. The most common RUMs are <b>Duration</b> and <b>Volume</b>. Before you create product offerings, you must define the RUMs available for rating when you create the service-event map. For each event, you specify the RUMs that can be used for rating it. This is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or <b>timeConfiguration</b>."
                    },
                    "genericSelector":{
                        "items":{
                            "$ref":"#/components/schemas/GenericSelectorRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of rules that map service and event attributes and expressions to a result. It is used in a charge to apply prices based on the rule results. This is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or <b>timeConfiguration</b>."
                    },
                    "crpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The date range validity of the charge rate plan. This is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or <b>timeConfiguration</b>."
                    },
                    "crpRelDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateRelDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The relative date range validity of the charge rate plan. This is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or <b>timeConfiguration</b>."
                    },
                    "crpAttributeAnalyzerModel":{
                        "items":{
                            "$ref":"#/components/schemas/CRAttributeAnalyzerRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) The container object used for modeling expressions based on event, product and customer attributes. This is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or <b>timeConfiguration</b>."
                    },
                    "zoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/ZoneModelRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) The Zone model rate plan. Zone models are a set of time zones, such as <b>Pacific Time</b> or <b>Eastern Time</b>. It is used to charge different prices based on customer's time zone. This is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or <b>timeConfiguration</b>."
                    },
                    "enhancedZoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/EnhancedZoneRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A special capability that enables the user to use zone models, USC selectors, and Access Point Name (APN) selectors when configuring a charge. This is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or <b>timeConfiguration</b>."
                    },
                    "crpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) The generic product offering price model. It is a rateplan element that directly composes an alteration product offering price model. It can be one-time, recurring, or usage type. This is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or <b>timeConfiguration</b>."
                    },
                    "timeConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateTimeRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) The time model configuration. This is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or <b>timeConfiguration</b>."
                    }
                },
                "type":"object"
            },
            "AlterationRatePlanJXB":{
                "description":"Refers to the alteration rate plan pricing object.",
                "required":[
                    "name",
                    "pricingProfileName"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The alteration rate plan's name."
                    },
                    "newName":{
                        "type":"string",
                        "title":"new name",
                        "description":"The alteration rate plan's new name."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The alteration rate plan's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"created date",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"create user",
                        "description":"The user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"last modified date",
                        "description":"The date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"last modified user",
                        "description":"The user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"The PDC version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internal id",
                        "description":"Unique ID (UUID) internally generated by PDC while committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"current state name",
                        "description":"The name of current state of the alteration rate plan."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"change set name",
                        "description":"The alteration rate plan's changeset."
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricing profile name",
                        "description":"Determines supported features for the discount. Usage events have standard discounts while one time and recurring events have subscription discounts."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"price list name",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"tax code",
                        "description":"The tax code used for the discount. Use either this parameter or TaxSelectorGroup(name, id), but not both."
                    },
                    "taxSelectorName":{
                        "type":"string",
                        "title":"tax selector name",
                        "description":"The name of the tax selector. The TaxSelectorGroup tag represents the tax selector information for the discount. Use either TaxSelector or TaxCode, but not both."
                    },
                    "taxSelectorIID":{
                        "type":"string",
                        "title":"tax selector id",
                        "description":"The ID of the tax selector. The TaxSelectorGroup tag represents the tax selector information for the discount. Use either TaxSelector or TaxCode, but not both."
                    },
                    "resourcesConsumptionOrder":{
                        "$ref":"#/components/schemas/ResourcesConsumptionOrderJXB",
                        "title":"resource consumption order",
                        "description":"Defines how to consume non-currency resources for discounts. In EARLIEST_EXPIRY, consume the resource that expires first. In RULE_ORDER, consume balances in the order of the configured discount rules, ignoring validity."
                    },
                    "arpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationDateRangeRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) The date-range validity of the alteration rate plan. You can specify arpDateRange, alterationConfiguration, or arpCompositePopModel. This is a required field."
                    },
                    "alterationConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) The alteration???s configuration, including triggers and selectors for Charge, Quantity, or Balance. Configure triggers with TriggerSpec and define conditions with charge selector specs. You can specify arpDateRange, alterationConfiguration, or arpCompositePopModel. This is a required field."
                    },
                    "arpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) It defines a generic product offering price model as a rate plan element that directly composes an alteration product offering price model and can be one-time, recurring, or usage type. You can specify arpDateRange, alterationConfiguration, or arpCompositePopModel. This is a required field."
                    }
                },
                "type":"object"
            },
            "DistributionRatePlanJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the distribution rate plan."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"The new name for the already named object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The object's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modification user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"Unique ID (UUID) internally generated by PDC while committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The name of the current state of the object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"taxcode",
                        "description":"The name of the tax code associated with this object."
                    },
                    "taxSelectorName":{
                        "type":"string",
                        "title":"taxSelectorName",
                        "description":"The name of the tax selector associated with this object."
                    },
                    "taxSelectorIID":{
                        "type":"string",
                        "title":"taxSelectorIID",
                        "description":"The ID of the tax selector associated with this object."
                    },
                    "drpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/DistributionDateRangeRPEBranchJXB"
                        },
                        "type":"array"
                    },
                    "distributionConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/DistributionRPEBranchJXB"
                        },
                        "type":"array"
                    },
                    "distributionPopModelName":{
                        "type":"string"
                    },
                    "drpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB"
                    },
                    "externalID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "RolloverRatePlanJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the rollover rate plan."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"The new name for the already named object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The object's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modification user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"Unique ID (UUID) internally generated by PDC while committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The name of the current state of the object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"taxcode",
                        "description":"The name of the tax code associated with this object."
                    },
                    "taxSelectorName":{
                        "type":"string",
                        "title":"taxSelectorName",
                        "description":"The name of the tax selector associated with this object."
                    },
                    "taxSelectorIID":{
                        "type":"string",
                        "title":"taxSelectorIID",
                        "description":"The ID of the tax selector associated with this object."
                    },
                    "dateRange":{
                        "$ref":"#/components/schemas/RolloverRateDateRangeJXB"
                    },
                    "externalID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "ChargeOfferingJXB":{
                "description":"Refers to the charge offer pricing object.",
                "required":[
                    "name",
                    "pricingProfileName",
                    "timeRange",
                    "applicableQuantity",
                    "chargeEventMap"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The charge offer's name."
                    },
                    "newName":{
                        "type":"string",
                        "title":"new name",
                        "description":"Refers to the new name given to the already named charge offer."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Describes the charge offer."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"created date",
                        "description":"Refers to the date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"created user",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"last modified date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"last modified user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"charge offer version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internal id",
                        "description":"Refers to the Unique ID (UUID) internally generated by Pricing Design Center while the pricing configuration was committed."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"current state name",
                        "description":"Refers to the name of current state of the charge offer."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"change set name",
                        "description":"Refers to the name of the change set of the charge offer."
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricing profile name",
                        "description":"Determines which features are supported for the charge based on the charge category and charge type."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"price list name",
                        "description":"The name of the price list. By default, this is configured as <i>Default</i>. Keep the value as <i>Default</i>."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "timeRange":{
                        "type":"string",
                        "title":"time range",
                        "description":"Refers to the time range during which the offer is available for purchase. The format is <b>startingTime/endingTime</b> where <i>TimeFormat</i> is <b>yyyymmddThhmmss</b> and default value is <b>0/inf</b>."
                    },
                    "productSpecName":{
                        "type":"string",
                        "description":"(required) The name of the service to which the charge offer applies. One of the fields <b>customerSpecName</b> and <b>productSpecName</b> are required and they are mutually exclusive."
                    },
                    "customerSpecName":{
                        "type":"string",
                        "description":"(required) The tag used for <b>Account</b> as a service. One of the fields <b>customerSpecName</b> and <b>productSpecName</b> are required and they are mutually exclusive."
                    },
                    "productSpecCharacteristic":{
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecCharacteristicJXB"
                        },
                        "type":"array",
                        "description":"Defines custom attributes and their valid values for a charge offer."
                    },
                    "offerType":{
                        "$ref":"#/components/schemas/OfferTypeJXB",
                        "description":"Refers to the type of charge offer allowed. By default, the offer type is <b>SUBSCRIPTION</b>. Note that<b>AGGREGATION</b> is not a valid offerType for a charge offering."
                    },
                    "priority":{
                        "type":"integer",
                        "title":"priority",
                        "description":"Refers to the priority for the charge offer. A higher number is given to a higher priority. For example, <b>if priority values are 1 and 2, then 2 would be given high priority</b>."
                    },
                    "provisioningTag":{
                        "type":"string",
                        "title":"provisioning tag",
                        "description":"Refers to the provisioning tag for the charge offer. This is used to implement extended rating attributes (ERAs) such as <b>call forwarding, blocking, and discount</b> for select calls."
                    },
                    "policySpecification":{
                        "type":"string",
                        "title":"policy specification",
                        "description":"Refers to policy specification for the charge offer. This is made up of one or more counter policies, each of which defines a gradation in the quality of service (QoS) based on the subscriber's service usage."
                    },
                    "partial":{
                        "type":"boolean",
                        "title":"partial",
                        "description":"Enables partial purchases."
                    },
                    "purchaseMin":{
                        "format":"double",
                        "type":"number",
                        "title":"purchase minimum",
                        "description":"Specifies the minimum number of charge offers that a customer can buy at one time. The default value for this <b>-1</b>, which means that by default, it is unlimited."
                    },
                    "purchaseMax":{
                        "format":"double",
                        "type":"number",
                        "title":"purchase maximum",
                        "description":"Specifies the maximum number of charge offers that a customer can buy at one time. The default value for this <b>-1</b>, which means that by default, it is unlimited."
                    },
                    "ownMin":{
                        "format":"double",
                        "type":"number",
                        "title":"minimum no of charge offer can be owned",
                        "description":"Specifies the minimum number of charge offers that a customer can own at one time. The default value for this <b>-1</b>, which means that by default, it is unlimited."
                    },
                    "ownMax":{
                        "format":"double",
                        "type":"number",
                        "title":"maximum no of charge offer can be owned",
                        "description":"Specifies the maximum number of charge offers that a customer can own at one time. The default value for this <b>-1</b>, which means that by default, it is unlimited."
                    },
                    "taxSupplier":{
                        "type":"string",
                        "title":"tax supplier",
                        "description":"Refers to the tax supplier's name for the charge offer."
                    },
                    "taxExemptionSelectorName":{
                        "type":"string",
                        "title":"tax exemption selector name",
                        "description":"The name of the tax exemption selector."
                    },
                    "taxExemptionSelectorIID":{
                        "type":"string",
                        "title":"tax exemption selector id",
                        "description":"Refers to the tax exemption selector's ID."
                    },
                    "applicableQuantity":{
                        "$ref":"#/components/schemas/ApplicableQuantityJXB",
                        "description":"Specifies how a charge offer is applied on a chargable quantity. This can be <b>REMAINING</b> or <b>ORIGINAL</b> based on the type of charge offer."
                    },
                    "purchaseCycleDOM":{
                        "format":"int32",
                        "type":"integer",
                        "title":"purchase cycle day of month",
                        "description":"Refers to the day of the month for the purchase cycle. The product validity is aligned to the specific date or the billing date. The range is between <b>0</b> to <b>31</b> and the default is <b>0</b>."
                    },
                    "expiryNotification":{
                        "type":"boolean",
                        "title":"expiry notification",
                        "description":"Triggers notifications to be sent to the customer when the charge offer is about to expire. The default value is <b>true>/b>."
                    },
                    "subscriptionDueNotification":{
                        "type":"boolean",
                        "title":"subscription due notification",
                        "description":"Triggers notifications to be sent to the customer before the subscription is due for renewal. The default value is <b>true</b>."
                    },
                    "dateRangeImpactType":{
                        "$ref":"#/components/schemas/DateRangeImpactTypeJXB",
                        "description":"Sets the impact type when balance impacts are added with new date ranges to an existing charge offer. It specifies if the existing subscriptions move to the new balance impact or continue with the old balance impact."
                    },
                    "deliverable":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeOfferDeliverableJXB",
                            "description":"Refers to a deliverable used by a charge offering. Deliverables specify when and how much revenue can be recognized from a customer's purchase of products and services."
                        },
                        "type":"array"
                    },
                    "retryMaxCount":{
                        "format":"int32",
                        "type":"integer",
                        "title":"maximum number of retry in total",
                        "description":"Refers to the maximum number of times the customer can retry the subscription before it fails. The default value is <b>0</b> implying no retries allowed. This is applicable when the credit limit is set as <b>AUTO_RENEW_CANCEL, RENTAL_FAILURE</b>, or <b>INSUFFICIENT_BALANCE</b>."
                    },
                    "retryUnit":{
                        "$ref":"#/components/schemas/RetryUnitJXB",
                        "description":"Refers to the measurement unit for retrial frequency. The default value is <b>Day</b>. This is applicable when the credit limit is set as <b>AUTO_RENEW_CANCEL, RENTAL_FAILURE</b>, or <b>INSUFFICIENT_BALANCE</b>."
                    },
                    "retryOffset":{
                        "format":"int32",
                        "type":"integer",
                        "title":"subsequent retry frequency",
                        "description":"Refers to the frequency of subsequent retries. The default value is <b>1</b>. This is applicable when the credit limit is set as <b>AUTO_RENEW_CANCEL, RENTAL_FAILURE</b>, or <b>INSUFFICIENT_BALANCE</b>."
                    },
                    "groupSharingEnabled":{
                        "type":"boolean",
                        "title":"group sharing enable/disable",
                        "description":"Enables the charge offer to be shared with all members of a product sharing group when purchased by the group's owner. The default value is <b>false</b>."
                    },
                    "validityRounding":{
                        "$ref":"#/components/schemas/ValidityRoundingModeJXB",
                        "description":"Specifies whether to start the charge offer's validity period at the purchase time or at midnight of the purchase day. The default value is <b>NOT_SET</b>."
                    },
                    "scaleRounding":{
                        "$ref":"#/components/schemas/ScaleRoundingModeJXB",
                        "description":"Specifies whether to calculate the scale based on <b>validityRounding</b>."
                    },
                    "chargeEventMap":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeEventMapJXB"
                        },
                        "type":"array",
                        "description":"The charge event map."
                    },
                    "priceTag":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTagWithDefaultJXB",
                            "description":"Tags any pricing attribute at design time, which can then be used at the rating time to impact different prices. This field is applicable for GET method."
                        },
                        "type":"array"
                    },
                    "externalID":{
                        "type":"string",
                        "title":"External id of charge offer.",
                        "description":"Refers to the object's external ID. It is used to create cross references, in case of migration."
                    }
                },
                "type":"object"
            },
            "AlterationOfferingJXB":{
                "description":"This is the alteration or discount offer???s pricing object.",
                "required":[
                    "name",
                    "pricingProfileName",
                    "timeRange",
                    "applicableChargeAndQuantity",
                    "alterationEventMap"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The alteration offer's name."
                    },
                    "newName":{
                        "type":"string",
                        "title":"new name",
                        "description":"The alteration offer's new name."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The alteration offer's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"created date",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"created user",
                        "description":"The user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"last modified date",
                        "description":"The date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"last modified user",
                        "description":"The user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"The PDC version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internal id",
                        "description":"Unique ID (UUID) internally generated by PDC while committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"current state name",
                        "description":"The name of current state of the alteration offer."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricing profile name",
                        "description":"Determines which features are supported for the discount. Standard Discount for usage event. Subscription Discount for onetime and recurring events."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"price list name",
                        "description":"Configured as default. It is not recommended to modify this field."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "timeRange":{
                        "type":"string",
                        "title":"time range",
                        "description":"The time range during which the offer is available for purchase in the format startingTime/endingTime."
                    },
                    "productSpecName":{
                        "type":"string",
                        "title":"product spec name",
                        "description":"The service type to which the alteration offer applies."
                    },
                    "customerSpecName":{
                        "type":"string",
                        "title":"customer spec name",
                        "description":"Tag used for \"Account\" as a service."
                    },
                    "productSpecCharacteristic":{
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecCharacteristicJXB"
                        },
                        "type":"array",
                        "title":"product spec characteristic",
                        "description":"Defines Custom Attributes and their valid values for alteration offer."
                    },
                    "offerType":{
                        "$ref":"#/components/schemas/OfferTypeJXB",
                        "title":"offer type",
                        "description":"Allowed type of the alteration offer."
                    },
                    "priority":{
                        "type":"integer",
                        "title":"priority",
                        "description":"Priority for the alteration offer."
                    },
                    "provisioningTag":{
                        "type":"string",
                        "title":"provisioning tag",
                        "description":"Provisioning tag for the alteration offer. This is used to implement extended rating attributes (ERAs) such as call forwarding, blocking, discount for select calls."
                    },
                    "policySpecification":{
                        "type":"string",
                        "title":"policy specification",
                        "description":"Policy specification for the alteration offer. This is made up of one or more counter policies, each of which defines a gradation in the quality of service (QoS) based on the subscriber's service usage."
                    },
                    "purchaseMin":{
                        "format":"double",
                        "type":"number",
                        "title":"purchase min",
                        "description":"Specifies the minimum number of alteration offers that a customer can buy at one time. -1 means unlimited."
                    },
                    "purchaseMax":{
                        "format":"double",
                        "type":"number",
                        "title":"purchase max",
                        "description":"Specifies the maximum number of alteration offers that a customer can buy at one time. -1 means unlimited."
                    },
                    "ownMin":{
                        "format":"double",
                        "type":"number",
                        "title":"own min",
                        "description":"Specifies the minimum number of alteration offers that a customer can own at one time. -1 means unlimited."
                    },
                    "ownMax":{
                        "format":"double",
                        "type":"number",
                        "title":"own max",
                        "description":"Specifies the maximum number of alteration offers that a customer can own at one time. -1 means unlimited."
                    },
                    "applicableChargeAndQuantity":{
                        "$ref":"#/components/schemas/ApplicableChargeAndQuantityJXB",
                        "title":"applicable charge and quantity",
                        "description":"Determines how to apply discounts when a charge qualifies for multiple discount offers. In ORIGINAL_CHARGE, apply the discount to the original charge amount, even if earlier discounts reduced it. In REMAINING_CHARGE, apply the discount to the charge amount remaining after prior discounts. In UNUSED_CHARGE_QUANTITY, apply the discount only to the portion of the charge and quantity not already used as the basis for a previous discount."
                    },
                    "groupSharingEnabled":{
                        "type":"boolean",
                        "title":"group sharing enabled",
                        "description":"Boolean flag to enable the discount offer to be shared with all members of an automated discount sharing group when it is purchased by the group's owner."
                    },
                    "alterationEventMap":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationEventMapJXB"
                        },
                        "type":"array",
                        "title":"alteration event map",
                        "description":"Shows the event details related to the discount offer. You can map multiple events within a discount offer, but to enable overrides, map only a single event type per discount offer. Each discount offer maps one-to-one to the alterationEventMap."
                    },
                    "priceTag":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTagWithDefaultJXB"
                        },
                        "type":"array",
                        "title":"price tag",
                        "description":"Tags applicable pricing attributes at design time, enabling them to be used at rating time to impact different price."
                    },
                    "externalID":{
                        "type":"string",
                        "title":"external id",
                        "description":"The external ID of this object. Used to create the cross references in case of migration."
                    }
                },
                "type":"object"
            },
            "DistributionOfferingJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the object."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"The new name for the already named object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The object's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modification user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"Unique ID (UUID) internally generated by PDC while committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The name of the current state of the object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "timeRange":{
                        "type":"string",
                        "title":"timeRange",
                        "description":"Refers to the time range during which the offer is available for purchase. The format is <b>startingTime/endingTime</b> where <i>TimeFormat</i> is <b>yyyymmddThhmmss</b> and default value is <b>0/inf</b>."
                    },
                    "productSpecName":{
                        "type":"string",
                        "title":"productSpecName",
                        "description":"The name of the product specification."
                    },
                    "customerSpecName":{
                        "type":"string",
                        "title":"customerSpecName",
                        "description":"The name of the customer specification."
                    },
                    "productSpecCharacteristic":{
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecCharacteristicJXB"
                        },
                        "type":"array"
                    },
                    "offerType":{
                        "$ref":"#/components/schemas/OfferTypeJXB"
                    },
                    "distributionEventMap":{
                        "items":{
                            "$ref":"#/components/schemas/DistributionEventMapJXB"
                        },
                        "type":"array"
                    },
                    "externalID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "SubscriptionTermsJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the subscription terms."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"The new name for the already named object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The object's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modification user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"Unique ID (UUID) internally generated by PDC while committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The name of the current state of the object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "termLength":{
                        "type":"integer"
                    },
                    "termUnit":{
                        "$ref":"#/components/schemas/TermTimeUnitJXB"
                    },
                    "earlyTerminationOption":{
                        "$ref":"#/components/schemas/EarlyTerminationOptionJXB"
                    },
                    "terminationGraceLength":{
                        "type":"integer"
                    },
                    "terminationGraceUnit":{
                        "$ref":"#/components/schemas/TermTimeUnitJXB"
                    },
                    "penaltyAmount":{
                        "format":"double",
                        "type":"number",
                        "title":"penaltyAmount",
                        "description":"Specifies the penalty amount charged to the customer for early contract cancellation. This fee recoups equipment costs or initial discounts, such as the cost of a cell phone provided free with a wireless subscription. The penalty fee may include an early termination fee, the remaining contract balance, or both. "
                    },
                    "penaltyBalanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"penaltyBalanceElementNumCode",
                        "description":"Specifies the numeric code of the balance element used for early termination penalty charges. "
                    },
                    "penaltyRevenueGlid":{
                        "format":"int32",
                        "type":"integer",
                        "title":"penaltyRevenueGlid",
                        "description":"Specifies the revenue general ledger ID associated with the early termination fee. If unspecified, the fee distributes across contract deliverables."
                    },
                    "penaltyOptions":{
                        "$ref":"#/components/schemas/ApplyPenaltyRuleJXB"
                    },
                    "autoRenew":{
                        "type":"boolean",
                        "title":"autoRenew",
                        "description":"Indicates whether the contract automatically renews with a Boolean flag (true or false). The default value is false. "
                    },
                    "externalID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "BundledProductOfferingJXB":{
                "description":"A bundled product offering object.",
                "required":[
                    "name",
                    "pricingProfileName",
                    "timeRange",
                    "status"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The bundled product offer's name."
                    },
                    "newName":{
                        "type":"string",
                        "title":"new name",
                        "description":"The bundled product offer's new name."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The bundled product offer's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"created date",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"create user",
                        "description":"The user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"last modified date",
                        "description":"The date and time the object was modified last."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"last modified user",
                        "description":"The user that modified the object last."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"The PDC version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internal Id",
                        "description":"Unique ID (UUID) internally generated by PDC while committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"current state name",
                        "description":"The name of current state of the bundle product offer."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricing profile name",
                        "description":"The pricing profile name determines which features the offer supports. Valid values include Convergent Usage, Product Offering, Standard ChargeSharing, Standard Discount, Subscription ChargeSharing, Subscription Discount, and Subscription. Use Standard Discount for usage events, and use Subscription Discount for one-time and recurring events."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"price list name",
                        "description":"Configured as Default. It is not recommended to modify this field."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "timeRange":{
                        "type":"string",
                        "title":"time range",
                        "description":"(Optional) Specify the purchase start and end dates for when the bundle can be purchased, using the format [YYYYMMDDTHHMMSS/YYYYMMDDTHHMMSS]. The default is <b>0/inf</b>. For the start date, enter <b>Immediately</b> or a specific date and time. For the end date, enter <b>inf</b> (never) or a specific date and time. The purchase period excludes the end date; for example, a bundle with start date <b>20240501T000000</b> and end date <b>20240510T000000</b> is available from May 1 through May 9."
                    },
                    "productSpecName":{
                        "type":"string",
                        "title":"product spec name",
                        "description":"This field specifies the service type to which the bundled product offering applies. Possible values are <b>productSpecName</b>, <b>customerSpecName</b>. It is required to provide at least one of these values."
                    },
                    "customerSpecName":{
                        "type":"string",
                        "title":"customer spec name",
                        "description":"This tag represents \"Account\" as a service. Possible values are <b>productSpecName</b> or <b>customerSpecName</b>. It is required to provide at least one of these values."
                    },
                    "billOnPurchase":{
                        "type":"boolean",
                        "title":"bill on purchase",
                        "description":"(Optional) Set this Boolean flag to immediately bill purchase fees when the customer buys the bundle. It does not bill other charges, such as recurring, usage, or cancellation fees."
                    },
                    "firstUsageActivation":{
                        "type":"boolean",
                        "title":"first usage activation",
                        "description":"(Optional) Boolean flag to activate all charge offers in a bundle on first usage. If true, all charge offers activate when the first charge offer activates. If false (default), activating one charge offer on first usage does not activate the others."
                    },
                    "subscriptionTermsIID":{
                        "type":"string",
                        "title":"subscription terms iid",
                        "description":"Internal ID for the subscription terms object."
                    },
                    "subscriptionTermsName":{
                        "type":"string",
                        "title":"subscription terms name",
                        "description":"Name for the subscription terms object."
                    },
                    "customize":{
                        "$ref":"#/components/schemas/CustomizeTypeJXB",
                        "title":"customize",
                        "description":"(Optional) Set whether a CSR can change a customer's default price and effective time period for a charge or discount offer - PROHIBITED, REQUIRED, or OPTIONAL."
                    },
                    "groupBalanceElements":{
                        "type":"boolean",
                        "title":"group balance elements",
                        "description":"(Optional) Set this Boolean flag to synchronize the start date of all balance elements to the first-usage date when any one activates for the first time. This applies only to balance elements configured to start on first usage, and only to first-usage balance elements granted by offers in the bundle."
                    },
                    "bundledProductOfferingItem":{
                        "items":{
                            "$ref":"#/components/schemas/BundledProductOfferingItemJXB"
                        },
                        "type":"array",
                        "title":"bundled product offering item",
                        "description":"Provide details about a charge offer or discount offer inside the bundle. For example, include the <b>purchaseStart</b>, <b>purchaseEnd</b>, <b>usageStart</b>, <b>usageEnd</b>, <b>cycleStart</b>, and <b>cycleEnd</b> fields."
                    },
                    "productSpecCharacteristic":{
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecCharacteristicJXB"
                        },
                        "type":"array",
                        "title":"product spec characteristic",
                        "description":"Use a key-value pair to define special product characteristics."
                    },
                    "externalID":{
                        "type":"string",
                        "title":"external id",
                        "description":"Enter the external ID for the object. Use it to create cross-references during migration."
                    }
                },
                "type":"object"
            },
            "PackageJXB":{
                "description":"A package includes one or more bundles available for customers to purchase.",
                "required":[
                    "name",
                    "pricingProfileName",
                    "balanceSpecification"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"Unique name of the Package."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"New name for the Package."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Description of the Package."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"The user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"lastModifiedDate",
                        "description":"The date and time the object was modified last."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"lastModifiedUser",
                        "description":"The user that modified the object last."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"The PDC version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"PDC generates a unique ID (UUID) when it commits the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"Enter the current state name for the Package."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports. Possible values are Convergent Usage, Product Offering, Standard ChargeSharing, Standard Discount, Subscription ChargeSharing, Subscription Discount, Subscription. For example, <b>Standard Discount for usage events</b>; <b>Subscription Discount for one-time and recurring events</b>."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as Default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "billOnPurchase":{
                        "type":"boolean",
                        "title":"billOnPurchase",
                        "description":"(Optional) Set this Boolean flag to immediately bill purchase fees when the customer buys the bundle. It does not bill other charges, such as recurring, usage, or cancellation fees."
                    },
                    "firstUsageActivation":{
                        "type":"boolean",
                        "title":"firstUsageActivation",
                        "description":"(Optional) Boolean flag to activate all charge offers in a package on first usage. If true, all charge offers activate on first usage. If false (default), activating one charge offer on first usage does not activate the others."
                    },
                    "customerSpecPackageItem":{
                        "$ref":"#/components/schemas/CustomerSpecPackageItemJXB",
                        "title":"customerSpecPackageItem",
                        "description":"Use this tag to hold bundle association attributes under \"Account\" in a package."
                    },
                    "productSpecPackageItem":{
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecPackageItemJXB"
                        },
                        "type":"array",
                        "title":"productSpecPackageItem",
                        "description":"Use this tag to hold bundle association attributes under \"Service*\" in a package (for example, <b>TelcoGsmSms</b>)."
                    },
                    "balanceSpecification":{
                        "items":{
                            "$ref":"#/components/schemas/BalanceSpecificationJXB"
                        },
                        "type":"array",
                        "title":"balanceSpecification",
                        "description":"By default, the account balance group tracks balances for all services. To track balances for specific services in a package, associate those services with their own balance groups. For each balance group, specify credit limits, credit thresholds, and consumption rules for its balance elements."
                    },
                    "subscriptionTermsIID":{
                        "type":"string",
                        "title":"subscriptionTermsIID",
                        "description":"Internal ID for the subscription terms object."
                    },
                    "subscriptionTermsName":{
                        "type":"string",
                        "title":"subscriptionTermsName",
                        "description":"Name for the subscription terms object."
                    },
                    "productSpecCharacteristic":{
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecCharacteristicJXB"
                        },
                        "type":"array",
                        "title":"productSpecCharacteristic",
                        "description":"Use a key-value pair to define special product characteristics."
                    },
                    "externalID":{
                        "type":"string",
                        "title":"externalID",
                        "description":"Enter the external ID for this object. Use it to create cross-references during migration."
                    }
                },
                "type":"object"
            },
            "AlterationOfferingExclusionJXB":{
                "description":"Configure discount offer exclusions to block a discount offer from being used or purchased when another discount offer or package is owned.",
                "required":[
                    "name",
                    "pricingProfileName",
                    "active",
                    "prohibitedAlterationOfferingName",
                    "alterationOfferingName"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"Unique name of the Alteration Offering Exclusion Object."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"New name for the named Alteration Offering Exclusion Object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Description of the Alteration Offering Exclusion Object."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"The user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"lastModifiedDate",
                        "description":"The date and time the object was modified last."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"lastModifiedUser",
                        "description":"The user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"The PDC version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"Unique ID (UUID) internally generated by PDC while committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"Enter the current state name for the Alteration Offering Exclusion object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"TThe pricing profile name determines which features the offer supports. Possible values are Convergent Usage, Product Offering, Standard ChargeSharing, Standard Discount, Subscription ChargeSharing, Subscription Discount, Subscription. For example, <b>Standard Discount for usage events</b>; <b>Subscription Discount for one-time and recurring events</b>."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as Default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "active":{
                        "type":"boolean",
                        "title":"active",
                        "description":"Set this Boolean flag to activate or deactivate the discount exclusion rule. The default is <b>true</b>."
                    },
                    "prohibitedAlterationOfferingName":{
                        "type":"string",
                        "title":"prohibitedAlterationOfferingName",
                        "description":"Enter the name of the discount offer to exclude when this alteration offering is owned."
                    },
                    "alterationOfferingName":{
                        "type":"string",
                        "title":"alterationOfferingName",
                        "description":"Enter the name of the current owned alteration offering for which you are creating an exclusion."
                    },
                    "externalID":{
                        "type":"string",
                        "title":"externalID",
                        "description":"Enter the external ID for this object. Use it to create cross-references during migration."
                    }
                },
                "type":"object"
            },
            "PackageExclusionJXB":{
                "description":"Specify the discount offers that cannot be used with the package.",
                "required":[
                    "name",
                    "pricingProfileName",
                    "active",
                    "prohibitedAlterationOfferingName",
                    "packageName"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"Unique name of the Package Exclusion Object."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"New name for the Package Exclusion Object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Description of the Package Exclusion Object."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"The user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"lastModifiedDate",
                        "description":"The date and time the object was modified last."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"lastModifiedUser",
                        "description":"The user that modified the object last."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"The PDC version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"PDC generates a unique ID (UUID) when it commits the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"Enter the current state name for the Package Exclusion object."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports. Possible values are Convergent Usage, Product Offering, Standard ChargeSharing, Standard Discount, Subscription ChargeSharing, Subscription Discount, Subscription. Foe example, <b>Standard Discount for usage events</b>; <b>Subscription Discount for one-time and recurring events</b>."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as Default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "active":{
                        "type":"boolean",
                        "title":"active",
                        "description":"Boolean flag to set discount restriction rule to be active or not. True by default."
                    },
                    "prohibitedAlterationOfferingName":{
                        "type":"string",
                        "title":"prohibitedAlterationOfferingName",
                        "description":"Name of the discount offer that is to be restricted from the package."
                    },
                    "packageName":{
                        "type":"string",
                        "title":"packageName",
                        "description":"Enter the name of the package part for which you are creating a package exclusion."
                    },
                    "externalID":{
                        "type":"string",
                        "title":"externalID",
                        "description":"Enter the external ID for this object. Use it to create cross-references during migration."
                    }
                },
                "type":"object"
            },
            "PackageTransitionJXB":{
                "description":"A package includes one or more bundles available for customers to purchase. Use transition rules to upgrade or downgrade a package to another package.",
                "required":[
                    "name",
                    "pricingProfileName",
                    "active",
                    "timeRange",
                    "waivePurchaseFee",
                    "waiveCancelFee",
                    "type",
                    "fromPackageName",
                    "toPackageName"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"Enter the unique name for the Package Transition."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"Enter the new name for the Package Transition."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Enter a description for the Package Transition."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"The user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"lastModifiedDate",
                        "description":"The date and time the object was modified last."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"lastModifiedUser",
                        "description":"The user that modified the object last."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"The PDC version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"PDC generates a unique ID (UUID) when it commits the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"Enter the current state name for the Package Transition."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports. Possible values are Convergent Usage, Product Offering, Standard ChargeSharing, Standard Discount, Subscription ChargeSharing, Subscription Discount, Subscription. For exampple, <b>Standard Discount for usage events</b>; <b>Subscription Discount for one-time and recurring events</b>."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as Default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "active":{
                        "type":"boolean",
                        "title":"active",
                        "description":"Set this Boolean flag to activate or deactivate the Package Transition rule. The default is <b>true</b>."
                    },
                    "timeRange":{
                        "type":"string",
                        "title":"timeRange",
                        "description":"The validity period when the transition rule becomes and remains effective."
                    },
                    "waivePurchaseFee":{
                        "type":"boolean",
                        "title":"waivePurchaseFee",
                        "description":"Specifies whether to waive purchase fees when an upgrade or downgrade occurs."
                    },
                    "waiveCancelFee":{
                        "type":"boolean",
                        "title":"waiveCancelFee",
                        "description":"Specifies whether to waive cancellation fees when an upgrade or downgrade occurs."
                    },
                    "customerSpecName":{
                        "type":"string",
                        "title":"customerSpecName",
                        "description":"Specifies the tag used for <b>Account</b> as a service, to which the package transition rules apply."
                    },
                    "productSpecName":{
                        "type":"string",
                        "title":"productSpecName",
                        "description":"The service for which package trantision rules are applied."
                    },
                    "prorationType":{
                        "$ref":"#/components/schemas/ProrationTypeJXB",
                        "title":"prorationType",
                        "description":"Specifies the <b>prorationType</b> setting, which determines whether the system prorates charges (splits them), fully charges the old bundle, or fully charges the new bundle when a transition occurs partway through a billing cycle."
                    },
                    "type":{
                        "$ref":"#/components/schemas/PackageTransitionTypeJXB",
                        "title":"type",
                        "description":"Specifies the <b>transition type</b>, indicating whether the system performs the transition as an <b>upgrade</b>, <b>downgrade</b>, or a technology generation change from one package to another."
                    },
                    "fromPackageName":{
                        "type":"string",
                        "title":"fromPackageName",
                        "description":"Name of the source package of package transtion rule."
                    },
                    "toPackageName":{
                        "type":"string",
                        "title":"toPackageName",
                        "description":"Name of the target package of package transtion rule."
                    },
                    "externalID":{
                        "type":"string",
                        "title":"externalID",
                        "description":"Uses the <b>external ID</b> of this object to create cross-references during migration."
                    }
                },
                "type":"object"
            },
            "BundledProductOfferingTransitionJXB":{
                "required":[
                    "name",
                    "pricingProfileName",
                    "timeRange",
                    "active",
                    "waivePurchaseFee",
                    "waiveCancelFee",
                    "fromBundledProductOfferingName",
                    "toBundledProductOfferingName",
                    "type"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"Specifies the unique name of the <b>Bundled Product Offering Transition</b> object."
                    },
                    "newName":{
                        "type":"string",
                        "title":"new name",
                        "description":"Specifies the new name for the <b>Bundled Product Offering Transition</b> object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Provides a description of the <b>Bundled Product Offering Transition</b> object."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"created date",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"created user",
                        "description":"The user that created the object"
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"last modified date",
                        "description":"The date and time the object was modified last."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"last modified user",
                        "description":"The user that modified the object last."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"The PDC version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internal id",
                        "description":"Uses a unique ID (<b>UUID</b>) that the <b>PDC</b> system generates internally when committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"current state name",
                        "description":"The object's current state."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricing profile name",
                        "description":"Specifies the name of the <b>pricing profile</b>, which determines the features the system enables for the offer. Possible values include <b>Convergent Usage</b>, <b>Product Offering</b>, <b>Standard ChargeSharing</b>, <b>Standard Discount</b>, <b>Subscription ChargeSharing</b>, <b>Subscription Discount</b>, and <b>Subscription</b>. For example, the system uses <b>Standard Discount</b> for usage events and <b>Subscription Discount</b> for one-time and recurring events."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"price list name",
                        "description":"Specifies the configuration mode, which is set to <b>Default</b> by default. Keep it as <b>Default</b>."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "active":{
                        "type":"boolean",
                        "title":"active",
                        "description":"Specifies whether the transition rule is enabled and available for subscribers. When <b>active</b>, customers can perform the upgrade or downgrade according to the defined rule. When not active, the system disables the transition, making it unavailable for subscriber operations."
                    },
                    "timeRange":{
                        "type":"string",
                        "title":"time range",
                        "description":"(Optional) Specifies the purchase start and end dates for the bundle in the format <b>[YYYYMMDDTHHMMSS/YYYYMMDDTHHMMSS]</b>. The default is <b>0/inf</b>. For the start date, you can enter <b>Immediately</b> or a specific date and time. For the end date, you can enter <b>inf</b> (never) or a specific date and time. The system excludes the end date from the purchase period; for example, a bundle with a start date of May 1 and an end date of May 10 is available from May 1 through May 9."
                    },
                    "waivePurchaseFee":{
                        "type":"boolean",
                        "title":"waive purchase fee",
                        "description":"Specifies whether the system charges the customer a purchase fee for the new bundle during the transition."
                    },
                    "waiveCancelFee":{
                        "type":"boolean",
                        "title":"waive cancel fee",
                        "description":"Specifies whether the system charges the customer a cancellation fee for the old bundle during the transition."
                    },
                    "customerSpecName":{
                        "type":"string",
                        "title":"customer spec name",
                        "description":"Specifies the tag used for <b>Account</b> as a service."
                    },
                    "productSpecName":{
                        "type":"string",
                        "title":"product spec name",
                        "description":"The service type to which the bundled product offering transition applies."
                    },
                    "prorationType":{
                        "$ref":"#/components/schemas/ProrationTypeJXB",
                        "title":"proration type",
                        "description":"Specifies the <b>prorationType</b> setting, which determines whether the system prorates charges (splits them), fully charges the old bundle, or fully charges the new bundle when a transition occurs partway through a billing cycle. The default value is <b>PRORATE_CHARGE</b>."
                    },
                    "type":{
                        "$ref":"#/components/schemas/BundledPOTransitionTypeJXB",
                        "title":"type",
                        "description":"Specifies the <b>Bundled Product Offering Transition Type</b>, which can be either <b>Downgrade</b> or <b>Upgrade</b>."
                    },
                    "fromBundledProductOfferingName":{
                        "type":"string",
                        "title":"from bundled product offering name",
                        "description":"Specifies the name of the source bundled product offering from which this transition rule moves."
                    },
                    "toBundledProductOfferingName":{
                        "type":"string",
                        "title":"to bundled product offering name",
                        "description":"Specifies the name of the target bundled product offering to which this transition rule moves."
                    },
                    "externalID":{
                        "type":"string",
                        "title":"external id",
                        "description":"Uses the <b>external ID</b> of this object to create cross-references during migration."
                    }
                },
                "type":"object",
                "description":"Defines rules for transitioning from one bundle to another."
            },
            "BundledProductOfferingDependencyJXB":{
                "required":[
                    "name",
                    "pricingProfileName",
                    "active",
                    "bundledProductOfferingName"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"Specifies the unique name of the <b>Bundled Product Offering Dependency</b> object."
                    },
                    "newName":{
                        "type":"string",
                        "title":"new name",
                        "description":"Specifies the new name for the <b>Bundled Product Offering Dependency</b> object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Provides a description of the <b>Bundled Product Offering Dependency</b> object."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"created date",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"created user",
                        "description":"The user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"last modified date",
                        "description":"The date and time the object was modified last."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"last modified user",
                        "description":"The user that modified the object last."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"The PDC version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internal id",
                        "description":"Uses a unique ID (<b>UUID</b>) that the <b>PDC</b> system generates internally when committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"current state name",
                        "description":"The object's current state."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricing profile name",
                        "description":"Specifies the name of the <b>pricing profile</b>, which determines the features the system supports for the offer. Possible values include <b>Convergent Usage</b>, <b>Product Offering</b>, <b>Standard ChargeSharing</b>, <b>Standard Discount</b>, <b>Subscription ChargeSharing</b>, <b>Subscription Discount</b>, and <b>Subscription</b>. For example, use <b>Standard Discount</b> for usage events and <b>Subscription Discount</b> for one-time and recurring events."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"price list name",
                        "description":"Configured as Default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "active":{
                        "type":"boolean",
                        "title":"active",
                        "description":"Specifies a boolean flag to activate the bundle dependency."
                    },
                    "bundledProductOfferingName":{
                        "type":"string",
                        "title":"bundled product offering name",
                        "description":"Specifies the name of the bundled product offering for which the dependency rule is applied."
                    },
                    "prohibitedBundledProductOfferingName":{
                        "type":"string",
                        "title":"prohibited bundled product offering name",
                        "description":"Specifies the name of the bundled product offering that a customer must not already own (mutually exclusive) to purchase the current bundled product offering."
                    },
                    "prerequisiteBundledProductOfferingName":{
                        "type":"string",
                        "title":"pre requisite bundled product offering name",
                        "description":"Specifies the name of the bundled product offering that a customer must own (prerequisite) to purchase the current bundled product offering."
                    },
                    "externalID":{
                        "type":"string",
                        "title":"external id",
                        "description":"The external ID of this object. Used to create the cross references during migration."
                    }
                },
                "type":"object",
                "description":"Defines dependent relationships between bundles."
            },
            "BestPricingJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the object."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"The new name for the already named object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The object's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modification user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"Unique ID (UUID) internally generated by PDC while committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The object's current state."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "mode":{
                        "$ref":"#/components/schemas/BestPricingModeJXB"
                    },
                    "bundledProductOfferingName":{
                        "type":"string"
                    },
                    "alternateBundledProductOffering":{
                        "items":{
                            "$ref":"#/components/schemas/AlternateOfferingJXB"
                        },
                        "type":"array"
                    },
                    "externalID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "PackageListJXB":{
                "description":"A package list is used to group related packages that can be made available to customer.",
                "required":[
                    "name",
                    "pricingProfileName",
                    "type",
                    "packageName",
                    "packageListStatus"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"Unique name of the Package List Object."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"New name for the Package List Object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Description of the Package List Object."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"The user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"lastModifiedDate",
                        "description":"The date and time the object was modified last."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"lastModifiedUser",
                        "description":"The user that modified the object last."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"version",
                        "description":"The PDC version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"Specifies the unique ID (<b>UUID</b>) that the <b>PDC</b> system generates internally when committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The name of the package list object's current state."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"Specifies the name of the <b>pricing profile</b>, which determines the features supported for the offer. Possible values include <b>Convergent Usage</b>, <b>Product Offering</b>, <b>Standard ChargeSharing</b>, <b>Standard Discount</b>, <b>Subscription ChargeSharing</b>, <b>Subscription Discount</b>, and <b>Subscription</b>. For example, use <b>Standard Discount</b> for usage events and <b>Subscription Discount</b> for one-time and recurring events."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as Default. It is not recommended to modify this value."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "type":{
                        "type":"string",
                        "title":"type",
                        "description":"Specifies the type of packages to add to the package list. The system treats the combination of the package list <b>segment</b> and <b>type</b> as case-sensitive, uniquely identifying a package list when used in <b>BRM</b>."
                    },
                    "segment":{
                        "type":"string",
                        "title":"segment",
                        "description":"Specifies the customer segment to which the package list is offered. The system treats the combination of the package list <b>segment</b> and <b>type</b> as case-sensitive, and it uniquely identifies a package list"
                    },
                    "packageName":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"packageName",
                        "description":"The name of the package part of the package list."
                    },
                    "packageListStatus":{
                        "$ref":"#/components/schemas/PackageListStatusJXB",
                        "title":"packageListStatus",
                        "description":"Determines whether the system makes the package list available for purchase immediately after adding it to the database. Valid values are <b>ACTIVE</b> or <b>INACTIVE</b>."
                    },
                    "externalID":{
                        "type":"string",
                        "title":"externalID",
                        "description":"Specifies the <b>external ID</b> of the object, used to create cross-references during migration."
                    }
                },
                "type":"object"
            },
            "SubscriptionTermsAutoRenewJXB":{
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the object."
                    },
                    "newName":{
                        "type":"string",
                        "title":"newName",
                        "description":"The new name for the already named object."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"The object's description."
                    },
                    "createdDate":{
                        "type":"object",
                        "title":"createdDate",
                        "description":"The date and time the object was created."
                    },
                    "createdUser":{
                        "type":"string",
                        "title":"createdUser",
                        "description":"Refers to the user that created the object."
                    },
                    "lastModifiedDate":{
                        "type":"object",
                        "title":"modification date",
                        "description":"Refers to the date and time the object was modified."
                    },
                    "lastModifiedUser":{
                        "type":"string",
                        "title":"modification user",
                        "description":"Refers to the user that modified the object."
                    },
                    "version":{
                        "format":"double",
                        "type":"number",
                        "title":"pdc version",
                        "description":"Refers to the Pricing Design Center version of the object."
                    },
                    "internalId":{
                        "type":"string",
                        "title":"internalId",
                        "description":"Unique ID (UUID) internally generated by PDC while committing the pricing configuration."
                    },
                    "currentStateName":{
                        "type":"string",
                        "title":"currentStateName",
                        "description":"The object's current state."
                    },
                    "changeSetName":{
                        "type":"string",
                        "title":"changeset",
                        "description":"Refers to the name of the change set of the object."
                    },
                    "publishSchemas":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "pricingProfileName":{
                        "type":"string",
                        "title":"pricingProfileName",
                        "description":"The pricing profile name determines which features the offer supports."
                    },
                    "priceListName":{
                        "type":"string",
                        "title":"priceListName",
                        "description":"Configured as default. It is not recommended to modify this."
                    },
                    "obsolete":{
                        "type":"boolean",
                        "title":"obsolete",
                        "description":"Set this Boolean flag to mark promoted (active) objects as obsolete."
                    },
                    "fromSubscriptionTermsName":{
                        "type":"string",
                        "title":"fromSubscriptionTermsName",
                        "description":"Specifies the name of the subscription term that ends and will be auto renewed."
                    },
                    "fromSubscriptionTermsIID":{
                        "type":"string",
                        "title":"fromSubscriptionTermsIID",
                        "description":"Specifies the internal ID of the subscription term that ends and will be auto renewed."
                    },
                    "toSubscriptionTermsName":{
                        "type":"string",
                        "title":"toSubscriptionTermsName",
                        "description":"Specifies the name of the subscription term used to renew the contract automatically after the current commitment period ends. This can be the same or a different term. "
                    },
                    "toSubscriptionTermsIID":{
                        "type":"string",
                        "title":"toSubscriptionTermsIID",
                        "description":"Specifies the internal ID of the subscription term used for automatic renewal after the current commitment period ends. This can be the same or a different term."
                    },
                    "externalID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "CustomerSpecPackageItemJXB":{
                "description":"Specifies the tag used to hold the bundle association attributes under <b>Account</b> in a package.",
                "required":[
                    "bundledProductOfferingAssociation"
                ],
                "properties":{
                    "balanceSpecificationName":{
                        "type":"string",
                        "title":"balance specification name",
                        "description":"The balance specification's name."
                    },
                    "bundledProductOfferingAssociation":{
                        "$ref":"#/components/schemas/BundledProductOfferingAssociationJXB"
                    }
                },
                "type":"object"
            },
            "ProductSpecPackageItemJXB":{
                "description":"Tag used for holding the bundle association attributes under \"Service*\" (such as TelcoGsmSms, TelcoGsmSms, and so on) in a package.",
                "required":[
                    "name",
                    "productSpecName"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The product specification package item's name."
                    },
                    "balanceSpecificationName":{
                        "type":"string",
                        "title":"balanceSpecificationName",
                        "description":"The balance specification's name."
                    },
                    "productSpecName":{
                        "type":"string",
                        "title":"product spec name",
                        "description":"The product specification's name."
                    },
                    "bundledProductOfferingAssociation":{
                        "items":{
                            "$ref":"#/components/schemas/BundledProductOfferingAssociationJXB"
                        },
                        "type":"array",
                        "title":"bundled product offering association",
                        "description":"Specifies the bundled product offering assocation."
                    },
                    "subPackageItem":{
                        "items":{
                            "$ref":"#/components/schemas/ProductSpecPackageItemJXB"
                        },
                        "type":"array",
                        "title":"sub package item",
                        "description":"For nested package Item- Tag used for holding the bundle association attributes under \"Service*\" (such as TelcoGsmSms, TelcoGsmSms, and so on) in a package."
                    }
                },
                "type":"object"
            },
            "BalanceSpecificationJXB":{
                "description":"By default, balances for all services are tracked in the account balance group. To track balances for specific services in the package, you associate the services with their own balance groups. For each balance group, you can specify credit limits, credit thresholds, and consumption rules for balance elements used by the services in that group.",
                "required":[
                    "name"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"The name of the balance specification."
                    },
                    "balanceElementSpecification":{
                        "items":{
                            "$ref":"#/components/schemas/BalanceElementSpecificationJXB"
                        },
                        "type":"array",
                        "title":"balance element specification",
                        "description":"Specifies the balance element information. A balance element represents a currency or noncurrency asset of economic value, such as U.S. dollars or included minutes."
                    }
                },
                "type":"object"
            },
            "ProductSpecCharacteristicJXB":{
                "required":[
                    "name",
                    "value"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"product spec char name",
                        "description":"Name of the special characteristic."
                    },
                    "value":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"product spec char values",
                        "description":"List of special characteristics added for a given name."
                    }
                },
                "type":"object",
                "description":"Key-value pair for defining special characteristics in a product."
            },
            "BalanceElementSpecificationJXB":{
                "description":"Specifies the balance element information. Represents a currency or noncurrency asset of economic value, such as U.S. dollars or included minutes.",
                "properties":{
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"Specifies the numeric code for the <b>balance element</b>. For example, <b>640</b> represents US dollars."
                    },
                    "consumptionRule":{
                        "$ref":"#/components/schemas/ConsumptionRuleTypeJXB",
                        "title":"consumption rule",
                        "description":"Specify the order in which sub-balances of a balance element are consumed."
                    },
                    "balanceCreditProfile":{
                        "$ref":"#/components/schemas/BalanceCreditProfileJXB",
                        "title":"balance credit profile",
                        "description":"A credit limit is the maximum amount of a balance element that can accumulate in a balance group. When a credit limit is reached, businesses typically deny customers access to the services associated with the balance group."
                    }
                },
                "type":"object"
            },
            "ConsumptionRuleTypeJXB":{
                "description":"Specify the order in which sub-balances of a balance element are consumed.",
                "enum":[
                    "EARLIEST_EXPIRATION",
                    "EARLIEST_EXPIRATION_EARLIEST_START",
                    "EARLIEST_EXPIRATION_LATEST_START",
                    "EARLIEST_START",
                    "EARLIEST_START_EARLIEST_EXPIRATION",
                    "EARLIEST_START_LATEST_EXPIRATION",
                    "LATEST_EXPIRATION",
                    "LATEST_EXPIRATION_EARLIEST_START",
                    "LATEST_EXPIRATION_LATEST_START",
                    "LATEST_START",
                    "LATEST_START_EARLIEST_EXPIRATION",
                    "LATEST_START_LATEST_EXPIRATION",
                    "NONE"
                ],
                "x-enumDescriptions":{
                    "EARLIEST_EXPIRATION":"Consume the sub-balance with the earliest validity end time first.",
                    "EARLIEST_EXPIRATION_EARLIEST_START":"Consume the sub-balance with the earliest validity end time first. If multiple sub-balances have the same validity end time, use the one with the earliest validity start time first.",
                    "EARLIEST_EXPIRATION_LATEST_START":"Consume the sub-balance with the latest validity end time first. If multiple sub-balances have the same validity end time, use the one with the latest validity start time first.",
                    "EARLIEST_START":"Consume the sub-balance with the earliest validity start time first.",
                    "EARLIEST_START_EARLIEST_EXPIRATION":"Consume the sub-balance with the earliest validity start time first. If multiple sub-balances have the same start time, use the one with the earliest validity end time first.",
                    "EARLIEST_START_LATEST_EXPIRATION":"Consume the sub-balance with the latest validity start time first. If multiple sub-balances have the same validity start time, use the one with the latest validity end time first.",
                    "LATEST_EXPIRATION":"Consume the sub-balance with the latest validity end time first.",
                    "LATEST_EXPIRATION_EARLIEST_START":"Consume the sub-balance with the earliest validity end time first. If multiple sub-balances have the same validity end time, use the one with the earliest validity start time first.",
                    "LATEST_EXPIRATION_LATEST_START":"Consume the sub-balance with the latest validity end time first. If multiple sub-balances have the same validity end time, use the one with the latest validity start time first.",
                    "LATEST_START":"Consume the sub-balance with the latest validity start time first.",
                    "LATEST_START_EARLIEST_EXPIRATION":"Consume the sub-balance with the latest validity start time first. If multiple sub-balances have the same validity start time, use the one with the earliest validity end time first.",
                    "LATEST_START_LATEST_EXPIRATION":"Consume the sub-balance with the latest validity start time first. If multiple sub-balances have the same validity start time, use the one with the latest validity end time first.",
                    "NONE":"When the attribute is set to NONE, the default consumption rule is not configured, and the order for consuming balances is undefined. By default this attribute is set to EARLIEST_START_EARLIEST_EXPIRATION but, setting NONE will make this to undefined."
                },
                "type":"string"
            },
            "BalanceCreditProfileJXB":{
                "description":"The maximum amount of a balance element that can accumulate in a balance group. When a credit limit is reached, businesses typically deny customers access to the services associated with the balance group.",
                "properties":{
                    "floor":{
                        "format":"double",
                        "type":"number",
                        "title":"floor",
                        "description":"Specifies minimum value for credit limit."
                    },
                    "ceiling":{
                        "format":"double",
                        "type":"number",
                        "title":"ceiling",
                        "description":"Specifies maximum value for credit limit."
                    },
                    "thresholdLevel":{
                        "items":{
                            "$ref":"#/components/schemas/ThresholdLevelJXB"
                        },
                        "type":"array",
                        "title":"threshold level",
                        "description":"A threshold level specifies the balance limit fixed or percentage that triggers a notification to the customer."
                    }
                },
                "type":"object"
            },
            "ThresholdLevelJXB":{
                "description":"A threshold level specifies the balance limit fixed or percentage that triggers a notification to the customer.",
                "required":[
                    "threshold",
                    "type"
                ],
                "properties":{
                    "threshold":{
                        "format":"double",
                        "type":"number",
                        "title":"threshold",
                        "description":"Threshold value at which a notification to occur."
                    },
                    "type":{
                        "$ref":"#/components/schemas/ThresholdTypeJXB",
                        "title":"type",
                        "description":"Threshold notification can be for information on credit limit crossed or may be to offer loan once threshold is crossed."
                    }
                },
                "type":"object"
            },
            "ThresholdTypeJXB":{
                "description":"Threshold notification can be for information on credit limit crossed or may be to offer loan once threshold is crossed.",
                "enum":[
                    "ABSOLUTE",
                    "ABSOLUTE_LOAN",
                    "PERCENTAGE",
                    "PERCENTAGE_LOAN"
                ],
                "x-enumDescriptions":{
                    "ABSOLUTE":"The fixed credit threshold value at which notification to occur.",
                    "ABSOLUTE_LOAN":"The fixed loan threshold value at which notification to occur.",
                    "PERCENTAGE":"The percentage credit threshold value at which notification to occur.",
                    "PERCENTAGE_LOAN":"The percentage loan threshold value at which notification to occur."
                },
                "type":"string"
            },
            "BundledProductOfferingAssociationJXB":{
                "description":"Specifies the bundled product offering assocation.",
                "required":[
                    "optional",
                    "bundledProductOfferingName"
                ],
                "properties":{
                    "optional":{
                        "type":"boolean",
                        "title":"optional flag",
                        "description":"Boolean flag to decide whether the assocation is mandatory."
                    },
                    "cancelWithService":{
                        "type":"boolean",
                        "title":"cancel with service flag",
                        "description":"Whether the association should be cancelled along with service."
                    },
                    "bundledProductOfferingName":{
                        "type":"string",
                        "title":"bundled product offering name",
                        "description":"The name of the bundled product offering."
                    }
                },
                "type":"object"
            },
            "PackageListStatusJXB":{
                "description":"Specifies whether the package list is available for purchase immediately after being added to the database. Valid values are <b>ACTIVE</b> or <b>INACTIVE</b>.",
                "enum":[
                    "ACTIVE",
                    "INACTIVE"
                ],
                "x-enumDescriptions":{
                    "ACTIVE":"Indicates that customers can purchase packages in the list as soon as the list is added to your system.",
                    "INACTIVE":"Indicates that the list is not visible to customers, and customers cannot purchase packages from the list."
                },
                "type":"string"
            },
            "BestPricingModeJXB":{
                "enum":[
                    "FULL_RERATE",
                    "ONE_TIME_ADJUST"
                ],
                "type":"string"
            },
            "AlternateOfferingJXB":{
                "properties":{
                    "minimumAmount":{
                        "format":"double",
                        "type":"number",
                        "title":"minimumAmount",
                        "description":"Specifies a minimum amount charged if the actual charge incurred is less, when an item is chosen from a group of options to complete the bundle."
                    },
                    "condition":{
                        "items":{
                            "$ref":"#/components/schemas/AlternateConditionJXB"
                        },
                        "type":"array"
                    },
                    "bundledProductOfferingName":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "AlternateConditionJXB":{
                "properties":{
                    "amount":{
                        "format":"double",
                        "type":"number"
                    },
                    "operator":{
                        "$ref":"#/components/schemas/ConditionOperatorJXB"
                    },
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer"
                    }
                },
                "type":"object"
            },
            "ConditionOperatorJXB":{
                "enum":[
                    "EQUAL_TO",
                    "GREATER_THAN",
                    "GREATER_THAN_EQUAL",
                    "LESS_THAN",
                    "LESS_THAN_EQUAL",
                    "NOT_EQUAL_TO"
                ],
                "type":"string"
            },
            "ProrationTypeJXB":{
                "description":"Specifies the <b>prorationType</b> setting, which determines whether charges are prorated (split), fully charged for the old bundle, or fully charged for the new bundle when a transition occurs partway through a billing cycle. The default value is <b>PRORATE_CHARGE</b>.",
                "enum":[
                    "ORIGINAL_CHARGE",
                    "PRORATE_CHARGE",
                    "TRANSFER_CHARGE"
                ],
                "x-enumDescription":{
                    "ORIGINAL_CHARGE":"The full charge for the original bundle is applied for the current cycle, the new bundle's charges start from the next billing cycle.",
                    "PRORATE_CHARGE":"Prorate charges for both the original and the new bundle according to the time the customer spent in each during the billing cycle.",
                    "TRANSFER_CHARGE":"The full charge for the new bundle is applied from the point of transition forward, ignoring the original bundle's charge for that cycle."
                },
                "type":"string"
            },
            "BundledPOTransitionTypeJXB":{
                "description":"Bundled Product Offering Transition Type- Downgrade or Upgrade.",
                "enum":[
                    "DOWNGRADE",
                    "UPGRADE"
                ],
                "x-enumDescriptions":{
                    "DOWNGRADE":"Downgrade to a bundle that is typically less expensive and has fewer features.",
                    "UPGRADE":"Upgrade to a bundle that is typically more expensive and has more features."
                },
                "type":"string"
            },
            "PackageTransitionTypeJXB":{
                "description":"Specifies the Transition type whether the transion is being done for upgrade or downgrade or technology generation change  a package to another package.",
                "enum":[
                    "DOWNGRADE",
                    "GENERATION_CHANGE",
                    "UPGRADE"
                ],
                "x-enumDescriptions":{
                    "DOWNGRADE":"Upgrade to a package that is typically more expensive and has more features.",
                    "GENERATION_CHANGE":"Generation change rule allow transitions between packages for different generations of wireless technology.",
                    "UPGRADE":"Downgrade to a package that is typically less expensive and has fewer features."
                },
                "type":"string"
            },
            "CustomizeTypeJXB":{
                "enum":[
                    "OPTIONAL",
                    "PROHIBITED",
                    "REQUIRED"
                ],
                "type":"string",
                "description":"Specifies whether a CSR can change a customer's default price and effective time period of a charge or discount offer. For example, <b>PROHIBITED</b> prevents CSRs from making changes, <b>REQUIRED</b> forces CSRs to make changes, and <b>OPTIONAL</b> allows CSRs to make changes, which is the default."
            },
            "BundledProductOfferingItemJXB":{
                "required":[
                    "status"
                ],
                "properties":{
                    "purchaseStart":{
                        "$ref":"#/components/schemas/ValidityJXB",
                        "title":"purchase start",
                        "description":"Specifies when a particular offer in a bundle or in a package becomes available to the subscriber after purchase."
                    },
                    "purchaseEnd":{
                        "$ref":"#/components/schemas/ValidityJXB",
                        "title":"purchase end",
                        "description":"Specifies when an offer is no longer available for purchase."
                    },
                    "usageStart":{
                        "$ref":"#/components/schemas/ValidityJXB",
                        "title":"usage start",
                        "description":"Specifies the effective start time for charging usage events tied to an offer included in a bundle or package."
                    },
                    "usageEnd":{
                        "$ref":"#/components/schemas/ValidityJXB",
                        "title":"usage end",
                        "description":"Specifies the effective end time for charging usage events tied to an offer included in a bundle or package."
                    },
                    "cycleStart":{
                        "$ref":"#/components/schemas/ValidityJXB",
                        "title":"cycle start",
                        "description":"Specifies the effective start date, time, or condition for applying recurring (subscription-based) charges to a customer for a given offer."
                    },
                    "cycleEnd":{
                        "$ref":"#/components/schemas/ValidityJXB",
                        "title":"cycle end",
                        "description":"Specifies the effective end time for charging recurring events tied to an offer included in a bundle or package."
                    },
                    "status":{
                        "type":"integer",
                        "title":"status",
                        "description":"(Optional) Specifies the initial status of the <b>product offering</b>. The possible values are <b>1</b> (active) or <b>0</b> (inactive). The default value is <b>1</b>."
                    },
                    "statusCode":{
                        "type":"integer",
                        "title":"status code",
                        "description":"(Optional) A customer-defined reason code if a product offering's status is inactive."
                    },
                    "renewalMode":{
                        "type":"boolean",
                        "title":"renewal mode",
                        "description":"(Optional) Specifies how to align recurring charge offers when a customer suspends and then reactivates a bundle. For example, <b>true</b> aligns the recurring charge offer as follows - when <b>cycleFeeFlag</b> is set to 0, the cycle aligns with the billing date; when <b>cycleFeeFlag</b> is 1 and <b>purchaseCycleDOM</b> is not set, the cycle aligns with the reactivation date; and when <b>cycleFeeFlag</b> is 1 and <b>purchaseCycleDOM</b> is set, the cycle aligns with either <b>purchaseCycleDOM</b> or the reactivation date, whichever is later. <b>false</b> aligns the recurring charge offer according to the setting in <b>purchaseCycleDOM</b>, which is the default."
                    },
                    "quantity":{
                        "format":"double",
                        "type":"number",
                        "title":"quantity",
                        "description":"(Optional) Specifies the number of charge offers or discount offers included in the bundle. The default value is <b>1</b>. For example, if a bundle for a cable service includes a charge offer that provides one set-top box and you want to include three set-top boxes, enter <b>3</b> for the charge offer in that bundle"
                    },
                    "purchaseChargeAdjustment":{
                        "format":"double",
                        "type":"number",
                        "title":"purchase charge adjustment",
                        "description":"(Optional) Specifies the adjustment to apply to the offer's purchase and cancel charges. The default value is <b>0</b>."
                    },
                    "usageChargeAdjustment":{
                        "format":"double",
                        "type":"number",
                        "title":"usage charge adjustment",
                        "description":"(Optional) Specifies the adjustments to apply to an offer's usage charge. The default value is <b>0</b>."
                    },
                    "cycleChargeAdjustment":{
                        "format":"double",
                        "type":"number",
                        "title":"cycle charge adjustment",
                        "description":"(Optional) Specifies the adjustments to apply to the offer's recurring charges. The default value is <b>0</b>."
                    },
                    "purchaseMode":{
                        "$ref":"#/components/schemas/PurchaseModeJXB",
                        "title":"purchase mode",
                        "description":"(Optional) Specifies how the system applies the offer when customers purchase the same charge offer or discount offer more than once. For example, <b>NEW_INSTANCE</b> purchases the additional offer as a new, unrelated subscription (default), <b>LONGEST_DATE</b> extends the existing subscription if purchased within the grace period, <b>EXTEND</b> also extends the existing subscription within the grace period, and <b>OVERWRITE</b> replaces the existing subscription with the new one."
                    },
                    "gracePeriodOffset":{
                        "type":"integer",
                        "title":"grace period offset",
                        "description":"(Optional) Specifies the length of the grace period during which an additional offer can be purchased as an extension of an existing subscription. For example, a value of <b>0</b> indicates no grace period. This field applies only when <b>purchaseMode</b> is set to <b>EXTEND</b> or <b>OVERWRITE</b>."
                    },
                    "gracePeriodUnit":{
                        "$ref":"#/components/schemas/GracePeriodUnitJXB",
                        "title":"grace period unit",
                        "description":"(Optional) Specifies the unit of the grace period in <b>gracePeriodOffset</b>. Valid values include <b>SECOND</b>, <b>MINUTE</b>, <b>HOUR</b>, and <b>DAY</b>, with <b>DAY</b> as the default. This field applies only when <b>purchaseMode</b> is set to <b>EXTEND</b> or <b>OVERWRITE</b>."
                    },
                    "addOnOfferingValidityMode":{
                        "$ref":"#/components/schemas/AddOnOfferingValidityModeJXB",
                        "title":"addon offering validity mode",
                        "description":"(Optional) Specifies that the charge offer can be purchased as an add-on product after the bundle has been purchased. For example, <b>BASE_OFFER</b> aligns the validity dates with the base charge offer and requires the <b>baseChargeOfferingName</b> field, <b>BASE_OFFER_EXPIRY_FIRST</b> aligns with the active base charge offer that expires first, <b>BASE_OFFER_EXPIRY_LAST</b> aligns with the active base charge offer that expires last, <b>BASE_OR_ADD_ON_OFFER_EXPIRY_FIRST</b> aligns with the active charge offer that expires first, and <b>BASE_OR_ADD_ON_OFFER_EXPIRY_LAST</b> aligns with the active charge offer that expires last."
                    },
                    "baseChargeOfferingName":{
                        "type":"string",
                        "title":"base charge offering name",
                        "description":"The name of the base charge offer on which to set the validity dates for an add-on offer. Note- Include this field only when addOnOfferingValidityMode is set to BASE_OFFER."
                    },
                    "chargeOfferingName":{
                        "type":"string",
                        "title":"charge offering name",
                        "description":"Displays the name of the charge offer. This field is not editable."
                    },
                    "alterationOfferingName":{
                        "type":"string",
                        "title":"alteration offering name",
                        "description":"Displays the name of the discount offer. This field is not editable."
                    },
                    "prorationBasedOn":{
                        "$ref":"#/components/schemas/ProrationBasedOnJXB",
                        "title":"proration based on",
                        "description":"Specifies the number of days in a month used to calculate a prorated cycle charge or discount in an offer. For example, <b>PRORATE_30_DAYS</b> calculates proration based on a 30-day month, <b>PRORATE_DAYS_IN_MONTH</b> uses the actual number of days in the month, such as 30 for June or 31 for May, and if not set or missing, the system applies the proration according to the system-wide setting in the <b>CM pin.conf</b> file."
                    }
                },
                "type":"object",
                "description":"Provides details about a <b>charge offer</b> or <b>discount offer</b> within the bundle. For example, it can include fields such as <b>purchaseStart</b>, <b>purchaseEnd</b>, <b>usageStart</b>, <b>usageEnd</b>, <b>cycleStart</b>, and <b>cycleEnd</b>."
            },
            "ValidityJXB":{
                "properties":{
                    "offset":{
                        "type":"integer",
                        "description":"Specifies the number of time units before activation. For example, <b>2 days</b> indicates that activation occurs two days after the start."
                    },
                    "unit":{
                        "$ref":"#/components/schemas/ValidityOffsetUnitJXB",
                        "descritption":"Specifies the unit of the <b>purchase start</b>, such as <b>days</b>, <b>months</b>, or <b>cycle</b>."
                    },
                    "mode":{
                        "$ref":"#/components/schemas/ValidityModeJXB",
                        "description":"Specifies the activation mode. Common options include <b>NOW_TO_NEVER</b> for immediate activation and <b>FIRST_USAGE</b> for activation upon first use."
                    }
                },
                "type":"object",
                "description":"Defines the object validity."
            },
            "PurchaseModeJXB":{
                "enum":[
                    "EXTEND",
                    "EXTEND_NEW_SUB_BAL",
                    "LONGEST_DATE",
                    "LONGEST_DATE_NEW_SUB_BAL",
                    "NEW_INSTANCE",
                    "OVERWRITE"
                ],
                "type":"string",
                "description":"(Optional) Specifies how the offer is applied when customers purchase the same charge offer or discount offer more than once. Valid values include <b>NEW_INSTANCE</b>, which purchases the additional offer as a new, unrelated subscription (default); <b>LONGEST_DATE</b>, which extends the existing subscription if purchased within the grace period; <b>EXTEND</b>, which also extends the existing subscription if purchased within the grace period; and <b>OVERWRITE</b>, which replaces the existing subscription with the new one."
            },
            "GracePeriodUnitJXB":{
                "enum":[
                    "DAY",
                    "HOUR",
                    "MINUTE",
                    "SECOND"
                ],
                "type":"string",
                "description":"(Optional) Specifies the unit of the grace period defined in <b>gracePeriodOffset</b>. Valid values are <b>SECOND</b>, <b>MINUTE</b>, <b>HOUR</b>, and <b>DAY</b>, with <b>DAY</b> as the default. This field applies only when <b>purchaseMode</b> is set to <b>EXTEND</b> or <b>OVERWRITE</b>."
            },
            "AddOnOfferingValidityModeJXB":{
                "enum":[
                    "BASE_OFFER",
                    "BASE_OFFER_EXPIRY_FIRST",
                    "BASE_OFFER_EXPIRY_LAST",
                    "BASE_OR_ADD_ON_OFFER_EXPIRY_FIRST",
                    "BASE_OR_ADD_ON_OFFER_EXPIRY_LAST"
                ],
                "type":"string",
                "description":"(Optional) Specifies that the charge offer can be purchased as an add-on product after the bundle has been purchased. The validity mode for the add-on charge offer can be set to <b>BASE_OFFER</b>, which aligns the validity dates with the base charge offer and requires the inclusion of the <b>baseChargeOfferingName</b> field. <b>BASE_OFFER_EXPIRY_FIRST</b> aligns the validity dates with the active base charge offer that expires first, while <b>BASE_OFFER_EXPIRY_LAST</b> aligns them with the one that expires last. <b>BASE_OR_ADD_ON_OFFER_EXPIRY_FIRST</b> aligns the validity with the active charge offer (base or add-on) that expires first, and <b>BASE_OR_ADD_ON_OFFER_EXPIRY_LAST</b> aligns it with the one that expires last."
            },
            "ProrationBasedOnJXB":{
                "enum":[
                    "PRORATE_30_DAYS",
                    "PRORATE_DAYS_IN_MONTH"
                ],
                "type":"string",
                "description":"Specifies the number of days in a month used to calculate a prorated cycle charge or discount in an offer. <b>PRORATE_30_DAYS</b> calculates the proration based on a 30-day month, while <b>PRORATE_DAYS_IN_MONTH</b> uses the actual number of days in the month, such as 30 for June or 31 for May. If not set or missing, the system applies the proration according to the system-wide setting in the <b>CM pin.conf</b> file."
            },
            "ValidityOffsetUnitJXB":{
                "enum":[
                    "CYCLE",
                    "DAY",
                    "HOUR",
                    "MINUTE",
                    "MONTH",
                    "SECOND"
                ],
                "type":"string",
                "description":"Specifies the unit of the <b>purchase start</b>, for example, <b>days</b>, <b>months</b>, or <b>cycle</b>"
            },
            "ValidityModeJXB":{
                "enum":[
                    "FIRST_USAGE",
                    "NOW_TO_NEVER",
                    "RELATIVE"
                ],
                "type":"string",
                "description":"Specifies the activation mode. Common options include <b>NOW_TO_NEVER</b> (immediate activation) and <b>FIRST_USAGE</b>."
            },
            "TermTimeUnitJXB":{
                "enum":[
                    "DAY",
                    "MONTH",
                    "WEEK",
                    "YEAR"
                ],
                "type":"string"
            },
            "EarlyTerminationOptionJXB":{
                "enum":[
                    "ALLOWED_NO_PENALTY",
                    "ALLOWED_WITH_PENALTY",
                    "NOT_ALLOWED"
                ],
                "type":"string"
            },
            "ApplyPenaltyRuleJXB":{
                "enum":[
                    "CONTRACT_BALANCE",
                    "FULL_CHARGE",
                    "USED_CONTRACT_UNITS"
                ],
                "type":"string"
            },
            "OfferTypeJXB":{
                "enum":[
                    "AGGREGATION",
                    "ITEM",
                    "SUBSCRIPTION",
                    "SYSTEM"
                ],
                "type":"string",
                "description":"Refers to the type of the charge offer allowed. The default offer type is <b>SUBSCRIPTION</b>. Note that <b>AGGREGATION</b> is not a valid offerType for the charge offering."
            },
            "DistributionEventMapJXB":{
                "properties":{
                    "eventName":{
                        "type":"string"
                    },
                    "validIfCancelled":{
                        "type":"boolean"
                    },
                    "validIfInactive":{
                        "type":"boolean"
                    },
                    "distributionRatePlanInfo":{
                        "$ref":"#/components/schemas/RatePlanInfoJXB"
                    },
                    "distributionRatePlanName":{
                        "type":"string"
                    },
                    "ratePlanIID":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "RatePlanInfoJXB":{
                "description":"Indicates to which rating engine(s) the AlterationRatePlan is published to.",
                "properties":{
                    "targetEngine":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"taget engine",
                        "description":"Specifies the target engine where the system publishes information about the <b>Discount Offer</b>. Possible values are <b>BRE</b>, <b>ECE</b>, and <b>RRE</b>."
                    }
                },
                "type":"object"
            },
            "ApplicableChargeAndQuantityJXB":{
                "enum":[
                    "ORIGINAL_CHARGE",
                    "REMAINING_CHARGE",
                    "UNUSED_CHARGE_QUANTITY"
                ],
                "type":"string",
                "description":"Determines how the discounts are applied to the charge when a charge is eligible for multiple discount offers. This option is not valid for discount offers that credit a balance."
            },
            "AlterationEventMapJXB":{
                "description":"Illustrates the event details associated with the <b>Discount Offer (DO)</b>. You can map multiple events within a DO; however, to enable override capability, each DO must map to only one type of event. There is a one-to-one mapping between the <b>DO</b> and the <b>alterationEventMap</b>.",
                "required":[
                    "eventName",
                    "validIfCancelled",
                    "validIfInactive",
                    "snowball",
                    "validAtStartNotValidAtEnd",
                    "notValidAtStartValidAtEnd",
                    "notValidAtStartNotValidAtEnd"
                ],
                "properties":{
                    "eventName":{
                        "type":"string",
                        "title":"event name",
                        "description":"Name of the event. The event type to which the Alteration Offer applies. For example, EventDelayedSessionTelcoGsm (/event/delayed/ session/telco/gsm in BRM) is used for usage events, while EventBillingProductFeeCycleCycle_forward_monthly (/ event/billing/product/fee/cycle/ cycle_forward_monthly) represents a monthly recurring fee (in-advance)."
                    },
                    "validIfCancelled":{
                        "type":"boolean",
                        "title":"valid if cancelled",
                        "description":"Discount even if the instantiated Alteration Offer status is canceled. BRM offering statuses are, 1 = active, 2 = inactive, 3 = canceled."
                    },
                    "validIfInactive":{
                        "type":"boolean",
                        "title":"valid if inactive",
                        "description":"Discount even if the instantiated Alteration Offer status is inactive."
                    },
                    "snowball":{
                        "type":"boolean",
                        "title":"snowball",
                        "description":"Displays if this discount is a snowball discount. Specifies whether to enable or disable the feature. Possible values are <b>true</b> (enable) and <b>false</b> (disable). In <b>BRM</b>, a <b>snowball discount</b> is a type of shared billing-time discount that distributes the discount to all accounts in a discount sharing group."
                    },
                    "validAtStartNotValidAtEnd":{
                        "$ref":"#/components/schemas/AlterationProrationValueJXB",
                        "title":"valid at start not valid at end",
                        "description":"Specifies how to apply discounts when they are valid from the start of a cycle but end in mid-cycle."
                    },
                    "notValidAtStartValidAtEnd":{
                        "$ref":"#/components/schemas/AlterationProrationValueJXB",
                        "title":"not valid at start valid at end",
                        "description":"Specifies how to apply discounts when they are valid from mid-cycle to the end of the cycle. "
                    },
                    "notValidAtStartNotValidAtEnd":{
                        "$ref":"#/components/schemas/AlterationProrationValueJXB",
                        "title":"not valid at start not valid at end",
                        "description":"Specifies how to apply discounts when they start mid-cycle and also end mid-cycle."
                    },
                    "alterationRatePlanInfo":{
                        "$ref":"#/components/schemas/RatePlanInfoJXB",
                        "title":"alteration rate plan info",
                        "description":"Indicates the rating engine(s) to which the <b>AlterationRatePlan</b> is published."
                    },
                    "alterationRatePlanSelectorInfo":{
                        "$ref":"#/components/schemas/RatePlanSelectorInfoJXB",
                        "title":"alteration rate plan selector info",
                        "description":"Indicates the rating engine(s) to which the <b>alterationRatePlanSelector</b> is published."
                    },
                    "alterationRatePlanName":{
                        "type":"string",
                        "description":"(required) The name of the <b>discount configuration</b> within the <b>Discount Offer (DO)</b> at a granular, detailed level. The discount configuration name can be any value, such as <b>OneTimeDiscount</b>, <b>RecurringDiscount</b>, or <b>RatingTimeDiscount</b>. This field must be either <b>alterationRatePlanName</b> or <b>alterationRatePlanSelectorName</b>. <b>Required</b>."
                    },
                    "alterationRatePlanSelectorName":{
                        "type":"string",
                        "description":"(required) The name of the <b>alteration rate plan selector</b>. This field must be either <b>alterationRatePlanName</b> or <b>alterationRatePlanSelectorName</b>. <b>Required</b>."
                    },
                    "RatePlanIID":{
                        "type":"string",
                        "title":"rate plan IID",
                        "description":"Discount rate plan IID generated internally by PDC for the alterationEventMap. It is optional and mutually exlusive to rate plan selector IID."
                    },
                    "ratePlanSelIID":{
                        "type":"string",
                        "title":"rate plan sel IID",
                        "description":"Specifies the discount rate plan selector <b>IID</b> that PDC generates internally for the <b>alterationEventMap</b>. This field is optional and mutually exclusive with <b>ratePlanIID</b>."
                    }
                },
                "type":"object"
            },
            "PriceTagWithDefaultJXB":{
                "required":[
                    "attributeName",
                    "tagName",
                    "tagScope"
                ],
                "properties":{
                    "attributeName":{
                        "type":"string",
                        "title":"price tag attribute name",
                        "description":"Refers to the attribute's name. It specifies whether the price tag is applied on the price (for balance impacts in rate plan and increment) or lower bound/upper bound (for quantity ranges in usage/onetime/recurring events)."
                    },
                    "tagName":{
                        "type":"string",
                        "title":"price tag name",
                        "description":"Refers to the name of the price tag configured with the charge offer."
                    },
                    "tagScope":{
                        "$ref":"#/components/schemas/PriceTagScopeJXB",
                        "description":"Refers to the price tag's scope. The default value is <b>Event Profile</b>."
                    },
                    "description":{
                        "type":"string",
                        "title":"price tag description",
                        "description":"Describes the price tag configured with the charge offer."
                    },
                    "defaultValue":{
                        "type":"string",
                        "title":"price tag default value",
                        "description":"Refers to the default value of the price tag."
                    },
                    "count":{
                        "format":"int64",
                        "type":"integer",
                        "title":"price tag count in charge offer",
                        "description":"Refers to the count of the price tag associated in rate plans."
                    }
                },
                "type":"object",
                "description":"A price tag can be used to tag applicable pricing attributes at the design time which then can be used at rating time to impact a different price."
            },
            "PriceTagScopeJXB":{
                "enum":[
                    "EVENT_PROFILE"
                ],
                "type":"string",
                "description":"Refers to the price tag's scope. The default value is <b>Event Profile</b>."
            },
            "AlterationProrationValueJXB":{
                "enum":[
                    "FULL_DISCOUNT",
                    "NOT_APPLICABLE",
                    "NO_DISCOUNT",
                    "PRORATE_DISCOUNT"
                ],
                "type":"string",
                "description":"Specifies how to apply discounts when they are valid from the start of a cycle but end in mid-cycle."
            },
            "RatePlanSelectorInfoJXB":{
                "description":"Indicates the rating engine(s) where the <b>alterationRatePlanSelector</b> is published.",
                "properties":{
                    "targetEngine":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"target engine",
                        "description":"Specifies the target engine where the system publishes information about the <b>alterationRatePlanSelector</b>. Possible values are <b>BRE</b>, <b>ECE</b>, and <b>RRE</b>."
                    }
                },
                "type":"object"
            },
            "ApplicableQuantityJXB":{
                "enum":[
                    "ORIGINAL",
                    "REMAINING"
                ],
                "type":"string",
                "description":"Specifies how a charge offer is applied on a chargable quantity. This can be <b>REMAINING</b> or <b>ORIGINAL</b> based on the type of charge offer."
            },
            "DateRangeImpactTypeJXB":{
                "enum":[
                    "EVENT_DATE",
                    "INSTANTIATED_DATE",
                    "PURCHASE_DATE"
                ],
                "type":"string",
                "description":"Sets the impact type when balance impacts are added with new date ranges to an existing charge offer. It specifies whether the existing subscriptions move to the new balance impact or continue with the old balance impact."
            },
            "ChargeOfferDeliverableJXB":{
                "required":[
                    "deliverableName"
                ],
                "properties":{
                    "deliverableName":{
                        "type":"string",
                        "title":"deliverable name",
                        "description":"The deliverable's name."
                    },
                    "deliverableIID":{
                        "type":"string",
                        "title":"deliverable id",
                        "description":"The deliverable's internal ID."
                    }
                },
                "type":"object",
                "description":"Refers to a deliverable used by a charge offering. Deliverables specify when and how much revenue can a customer's purchase of the products and services recognise."
            },
            "RetryUnitJXB":{
                "enum":[
                    "DAY",
                    "HOUR",
                    "MINUTE",
                    "MONTH",
                    "SECOND",
                    "WEEK",
                    "YEAR"
                ],
                "type":"string",
                "description":"Refers to the retrial frequency's measurment unit. The default value is <b>day</b>. This is applicable when the credit limit is set as <b>AUTO_RENEW_CANCEL, RENTAL_FAILURE</b>, or <b>INSUFFICIENT_BALANCE</b>."
            },
            "ValidityRoundingModeJXB":{
                "enum":[
                    "NOT_SET",
                    "OFF",
                    "ON"
                ],
                "type":"string",
                "description":"Specifies whether to start the charge offer's validity period at the purchase time or at midnight of the purchase day. The default value is <b>NOT_SET</b>."
            },
            "ScaleRoundingModeJXB":{
                "enum":[
                    "OFF",
                    "ON"
                ],
                "type":"string",
                "description":"Specifies whether to calculate the scale based on <b>validityRounding</b>."
            },
            "ChargeEventMapJXB":{
                "required":[
                    "eventName",
                    "validIfCancelled",
                    "validIfInactive",
                    "timezoneMode",
                    "minQuantity",
                    "minQuantityUnit",
                    "incrementQuantity",
                    "incrementQuantityUnit",
                    "roundingMode",
                    "prorateFirst",
                    "prorateLast"
                ],
                "properties":{
                    "eventName":{
                        "type":"string",
                        "title":"charge event name",
                        "description":"Refers to the event's name."
                    },
                    "validIfCancelled":{
                        "type":"boolean",
                        "title":"charge valid if canceled",
                        "description":"Specifies to charge even if the instantiated product offering status is canceled. The default value is <b>true</b>."
                    },
                    "validIfInactive":{
                        "type":"boolean",
                        "title":"charge valid if inactive",
                        "description":"Specifies to charge even if the instantiated product offering status is inactive. The default value is <b>true</b>."
                    },
                    "validIfSuspendedActive":{
                        "type":"boolean",
                        "title":"charge valid if suspended active",
                        "description":"Specifies to charge even if the instantiated product offering status is suspended but active. The default value is <b>true</b>."
                    },
                    "rum":{
                        "type":"string",
                        "title":"rum name",
                        "description":"The name of the RUM. RUMs specify the units used to measure an event and how to calculate the measurement."
                    },
                    "description":{
                        "type":"string",
                        "title":"charge event description",
                        "description":"Describes the charge event map configured."
                    },
                    "timezoneMode":{
                        "title":"charge event timezone mode",
                        "description":"Determines the time zone used to rate an event. Possible values are <b>account, event and server</b>.",
                        "$ref":"#/components/schemas/TimeZoneModeJXB"
                    },
                    "minQuantity":{
                        "type":"number",
                        "title":"rum min round quantity",
                        "description":"Refers to the minimum value that the RUM quantity is rounded to. The minimum quantity starts from 0 by default."
                    },
                    "minQuantityUnit":{
                        "type":"string",
                        "title":"rum min quantity unit",
                        "description":"Refers to the unit in which the minimum quantity is expressed. Possible values are <b>none, second, minute, hour, day</b>."
                    },
                    "incrementQuantity":{
                        "type":"number",
                        "title":"rum round increment quantity",
                        "description":"Refers to the incremental value to round the RUM quantity to. The RUM quantity is always rounded to an integral multiple of the Incremental Quantity. For example, <b>if the Increment Quantity is configured as 30 for a RUM of seconds, then the amount to rate will be rounded to that increment (see roundingMode) and a 43 second call will be rated as 60 seconds (if rounding up) or 30 seconds (if rounding down)</b>."
                    },
                    "incrementQuantityUnit":{
                        "type":"string",
                        "title":"rum round increment quantity unit",
                        "description":"Refers to the units that increment quantity is specified in. Possible values are <none, second, minute, hour, day</b>."
                    },
                    "roundingMode":{
                        "title":"rum quantity rounding mode",
                        "description":"Specifies how the RUM quantity is rounded. Possible values are <b>down, nearest, up</b>.",
                        "$ref":"#/components/schemas/RoundingModeJXB"
                    },
                    "prorateFirst":{
                        "title":"charge purchase prorate first",
                        "description":"Specifies how to apply cycle fees and rollovers when customers purchase subscriptions in the middle of their billing cycle. Possible values are <b>FULL_CHARGE, NOT_APPLICABLE, NO_CHARGE, PRORATE_CHARGE</b>.",
                        "$ref":"#/components/schemas/ProrationValueJXB"
                    },
                    "prorateLast":{
                        "title":"charge cancel prorate last",
                        "description":"Specifies how to apply cycle fees and rollovers when customers cancel subscriptions in the middle of their billing cycle. Possible values are <b>FULL_CHARGE, NOT_APPLICABLE, NO_CHARGE, PRORATE_CHARGE</b>.",
                        "$ref":"#/components/schemas/ProrationValueJXB"
                    },
                    "prorateCycle":{
                        "title":"charge change dom prorate cycle",
                        "description":"Specifies how to apply cycle fees when customers change their billing day of the month (DOM) during any billing cycle.",
                        "$ref":"#/components/schemas/ProrationValueJXB"
                    },
                    "chargeRatePlanInfo":{
                        "title":"charge rate plan info",
                        "description":"Indicates the rating engine(s) the charge rate plan is published to.",
                        "$ref":"#/components/schemas/ChargeRatePlanInfoJXB"
                    },
                    "chargeRatePlanSelectorName":{
                        "type":"string",
                        "description":"(required) The charge selector's name. One of the fields <b>chargeRatePlanSelectorName, chargeRatePlanName</b>, or <b>rolloverRatePlanName</b> are required and they are mutually exclusive.."
                    },
                    "chargeRatePlanName":{
                        "type":"string",
                        "description":"(required) The name of the charge configuration inside the charge offer at a granular and more detailed level. One of the fields <b>chargeRatePlanSelectorName, chargeRatePlanName</b>, or <b>rolloverRatePlanName</b> are required and they are mutually exclusive."
                    },
                    "rolloverRatePlanName":{
                        "type":"string",
                        "description":"(required) The rollover rate plan's name. One of the fiels <b>chargeRatePlanSelectorName, chargeRatePlanName</b>, or <b>rolloverRatePlanName</b> are required and they are mutually exclusive."
                    },
                    "ratePlanIID":{
                        "type":"string",
                        "title":"rate plan id",
                        "description":"The charge rate plan's ID generated internally by the PDC system for the charge event map."
                    },
                    "ratePlanSelIID":{
                        "type":"string",
                        "title":"rate plan selector id",
                        "description":"The charge selector's ID generated internally by the PDC system for the charge event map."
                    }
                },
                "type":"object"
            },
            "TimeZoneModeJXB":{
                "enum":[
                    "ACCOUNT",
                    "EVENT",
                    "SERVER"
                ],
                "type":"string",
                "description":"Determines the time zone used to rate an event."
            },
            "RoundingModeJXB":{
                "enum":[
                    "DOWN",
                    "DOWN_ALT",
                    "EVEN",
                    "FLOOR",
                    "FLOOR_ALT",
                    "NEAREST",
                    "UP"
                ],
                "type":"string",
                "description":"Specifies how a RUM quantity is rounded."
            },
            "ProrationValueJXB":{
                "enum":[
                    "FULL_CHARGE",
                    "NOT_APPLICABLE",
                    "NO_CHARGE",
                    "PRORATE_CHARGE"
                ],
                "type":"string",
                "description":"Specifies how to apply cycle fee or rollover when a customer makes changes to subscription in the middle of the billing cycle."
            },
            "ChargeRatePlanInfoJXB":{
                "properties":{
                    "targetEngine":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"charge rate plan target engine",
                        "description":"Refers to the target engine where the information about the charge offer is to be published."
                    }
                },
                "type":"object",
                "description":"Indicates to which rating engine(s) the charge rate plan is published."
            },
            "AAStereoTypeJXB":{
                "enum":[
                    "ALTERATION_RATE_PLAN_SELECTOR",
                    "APN_MAP",
                    "ATTRIBUTE_ANALYZER_MODEL",
                    "CHARGE_RATE_PLAN_SELECTOR",
                    "GENERIC_SELECTOR",
                    "PRICE_MODEL_SELECTOR",
                    "TAX_EXEMPTION_SELECTOR",
                    "TAX_SELECTOR",
                    "USC_MAP"
                ],
                "type":"string",
                "description":"Specifies the type of selector."
            },
            "AAValidityPeriodJXB":{
                "properties":{
                    "validFrom":{
                        "type":"string"
                    },
                    "rule":{
                        "items":{
                            "$ref":"#/components/schemas/AARuleJXB"
                        },
                        "type":"array"
                    }
                },
                "type":"object"
            },
            "AAModelDataJXB":{
                "properties":{
                    "description":{
                        "type":"string"
                    },
                    "key":{
                        "type":"string"
                    },
                    "value":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "AARuleJXB":{
                "properties":{
                    "name":{
                        "type":"string"
                    },
                    "ruleData":{
                        "items":{
                            "$ref":"#/components/schemas/AARuleDataJXB"
                        },
                        "type":"array"
                    },
                    "result":{
                        "items":{
                            "$ref":"#/components/schemas/AAResultJXB"
                        },
                        "type":"array"
                    },
                    "namedResultExpression":{
                        "items":{
                            "$ref":"#/components/schemas/NamedResultExpressionJXB"
                        },
                        "type":"array"
                    },
                    "customExpression":{
                        "items":{
                            "$ref":"#/components/schemas/CustomExpressionJXB"
                        },
                        "type":"array"
                    },
                    "fieldToValueExpression":{
                        "items":{
                            "$ref":"#/components/schemas/FieldToValueExpressionJXB"
                        },
                        "type":"array"
                    },
                    "fieldToFieldExpression":{
                        "items":{
                            "$ref":"#/components/schemas/FieldToFieldExpressionJXB"
                        },
                        "type":"array"
                    },
                    "valueMapExpression":{
                        "items":{
                            "$ref":"#/components/schemas/ValueMapExpressionJXB"
                        },
                        "type":"array"
                    },
                    "crSelectorExpression":{
                        "items":{
                            "$ref":"#/components/schemas/CRSelectorExpressionJXB"
                        },
                        "type":"array"
                    },
                    "complexAAExpression":{
                        "items":{
                            "$ref":"#/components/schemas/ComplexAAExpressionJXB"
                        },
                        "type":"array"
                    }
                },
                "type":"object"
            },
            "AARuleDataJXB":{
                "properties":{
                    "description":{
                        "type":"string"
                    },
                    "key":{
                        "type":"string"
                    },
                    "value":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "AAResultJXB":{
                "properties":{
                    "resultName":{
                        "type":"string"
                    },
                    "resultData":{
                        "items":{
                            "$ref":"#/components/schemas/AAResultDataJXB"
                        },
                        "type":"array"
                    }
                },
                "type":"object"
            },
            "NamedResultExpressionJXB":{
                "properties":{
                    "namedResult":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    }
                },
                "type":"object"
            },
            "CustomExpressionJXB":{
                "properties":{
                    "functionName":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "FieldToValueExpressionJXB":{
                "properties":{
                    "operation":{
                        "$ref":"#/components/schemas/OperatorJXB"
                    },
                    "seperator":{
                        "type":"string"
                    },
                    "fieldName":{
                        "type":"string"
                    },
                    "fieldValue":{
                        "type":"string"
                    },
                    "fieldKind":{
                        "$ref":"#/components/schemas/FieldKindJXB"
                    }
                },
                "type":"object"
            },
            "FieldToFieldExpressionJXB":{
                "properties":{
                    "operation":{
                        "$ref":"#/components/schemas/OperatorJXB"
                    },
                    "seperator":{
                        "type":"string"
                    },
                    "lhsFieldName":{
                        "type":"string"
                    },
                    "rhsFieldName":{
                        "type":"string"
                    },
                    "lhsFieldKind":{
                        "$ref":"#/components/schemas/FieldKindJXB"
                    },
                    "rhsFieldKind":{
                        "$ref":"#/components/schemas/FieldKindJXB"
                    }
                },
                "type":"object"
            },
            "ValueMapExpressionJXB":{
                "properties":{
                    "operation":{
                        "$ref":"#/components/schemas/OperatorJXB"
                    },
                    "seperator":{
                        "type":"string"
                    },
                    "valueMapName":{
                        "type":"string"
                    },
                    "zoneModelName":{
                        "type":"string"
                    },
                    "fieldName":{
                        "type":"string"
                    },
                    "mappedValue":{
                        "type":"string"
                    },
                    "fieldKind":{
                        "$ref":"#/components/schemas/FieldKindJXB"
                    }
                },
                "type":"object"
            },
            "CRSelectorExpressionJXB":{
                "properties":{
                    "leftOperand":{
                        "type":"string"
                    },
                    "rightOperand":{
                        "type":"string"
                    },
                    "operator":{
                        "$ref":"#/components/schemas/LogicalOperatorJXB"
                    }
                },
                "type":"object"
            },
            "ComplexAAExpressionJXB":{
                "properties":{
                    "leftOperand":{
                        "$ref":"#/components/schemas/AttributeAnalyzerExpressionsJXB"
                    },
                    "rightOperand":{
                        "$ref":"#/components/schemas/AttributeAnalyzerExpressionsJXB"
                    },
                    "operator":{
                        "$ref":"#/components/schemas/LogicalOperatorJXB"
                    }
                },
                "type":"object"
            },
            "AttributeAnalyzerExpressionsJXB":{
                "properties":{
                    "namedResultExpression":{
                        "$ref":"#/components/schemas/NamedResultExpressionJXB"
                    },
                    "customExpression":{
                        "$ref":"#/components/schemas/CustomExpressionJXB"
                    },
                    "fieldToValueExpression":{
                        "$ref":"#/components/schemas/FieldToValueExpressionJXB"
                    },
                    "fieldToFieldExpression":{
                        "$ref":"#/components/schemas/FieldToFieldExpressionJXB"
                    },
                    "valueMapExpression":{
                        "$ref":"#/components/schemas/ValueMapExpressionJXB"
                    },
                    "crSelectorExpression":{
                        "$ref":"#/components/schemas/CRSelectorExpressionJXB"
                    },
                    "complexAAExpression":{
                        "$ref":"#/components/schemas/ComplexAAExpressionJXB"
                    }
                },
                "type":"object"
            },
            "LogicalOperatorJXB":{
                "enum":[
                    "AND",
                    "NONE",
                    "NOT",
                    "OR"
                ],
                "type":"string"
            },
            "OperatorJXB":{
                "enum":[
                    "EQUAL_TO",
                    "GREATER_THAN",
                    "GREATER_THAN_EQUAL",
                    "IN_LIST",
                    "LESS_THAN",
                    "LESS_THAN_EQUAL",
                    "MAPS_TO",
                    "NOT_EQUAL_TO",
                    "REGEX"
                ],
                "type":"string"
            },
            "FieldKindJXB":{
                "enum":[
                    "CUSTOMER_SPEC_FIELD",
                    "EVENT_SPEC_FIELD",
                    "PRODUCT_SPEC_FIELD",
                    "PROFILE_SPEC_FIELD"
                ],
                "type":"string"
            },
            "AAResultDataJXB":{
                "properties":{
                    "description":{
                        "type":"string"
                    },
                    "key":{
                        "type":"string"
                    },
                    "value":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "RolloverRateDateRangeJXB":{
                "properties":{
                    "name":{
                        "type":"string"
                    },
                    "description":{
                        "type":"string"
                    },
                    "startDate":{
                        "type":"string"
                    },
                    "endDate":{
                        "type":"string"
                    },
                    "rolloverPopModel":{
                        "$ref":"#/components/schemas/RolloverPopModelJXB"
                    }
                },
                "type":"object"
            },
            "RolloverPopModelJXB":{
                "required":[
                    "rolloverCharge"
                ],
                "properties":{
                    "rolloverCharge":{
                        "items":{
                            "$ref":"#/components/schemas/RolloverPopJXB"
                        },
                        "type":"array",
                        "title":"rollover charge",
                        "description":"Defines the rollover product offering price."
                    }
                },
                "type":"object",
                "description":"Defines the rollover product offering price model."
            },
            "RolloverPopJXB":{
                "required":[
                    "unitOfMeasure",
                    "balanceElementNumCode",
                    "rolloverUnits",
                    "rolloverMaxUnits"
                ],
                "properties":{
                    "glid":{
                        "format":"int32",
                        "type":"integer",
                        "title":"glid",
                        "description":"Refers to the general ledger's ID. It is used for selecting the required general ledger information for a given balance impact."
                    },
                    "unitOfMeasure":{
                        "$ref":"#/components/schemas/RolloverUnitOfMeasureJXB",
                        "title":"unit of measure",
                        "description":"Configures the frequency of the rollover. For example, <b>monthly, days, years</b>. Possible values are <b>days, months, weeks, years</b>."
                    },
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"Refers to the balance element's numeric code. For example, <b>840 for USD</b>."
                    },
                    "rolloverUnits":{
                        "format":"double",
                        "type":"number",
                        "title":"rollover units",
                        "description":"Specifies the quantity to rollover per period."
                    },
                    "rolloverMaxUnits":{
                        "format":"double",
                        "type":"number",
                        "title":"rollover max units",
                        "description":"Specifies the maximum quantity that can be rolled over."
                    },
                    "rolloverCount":{
                        "type":"integer",
                        "title":"rollover count",
                        "description":"Specifies the maximum number of periods to rollover. The default value <b>1</b>."
                    }
                },
                "type":"object",
                "description":"Defines the rollover product offering price."
            },
            "RolloverUnitOfMeasureJXB":{
                "enum":[
                    "DAYS",
                    "MONTHS",
                    "WEEKS",
                    "YEARS"
                ],
                "type":"string",
                "description":"Configures the frequency of rollover. For example, <b>monthly, days, years</b>. Possible values are <b>days, months, weeks, years</b>."
            },
            "DistributionDateRangeRPEBranchJXB":{
                "properties":{
                    "name":{
                        "type":"string"
                    },
                    "description":{
                        "type":"string"
                    },
                    "startDate":{
                        "type":"string"
                    },
                    "endDate":{
                        "type":"string"
                    },
                    "drpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/DistributionDateRangeRPEBranchJXB"
                        },
                        "type":"array"
                    },
                    "distributionConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/DistributionRPEBranchJXB"
                        },
                        "type":"array"
                    },
                    "distributionPopModelName":{
                        "type":"string"
                    },
                    "drpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB"
                    }
                },
                "type":"object"
            },
            "DistributionRPEBranchJXB":{
                "properties":{
                    "name":{
                        "type":"string"
                    },
                    "description":{
                        "type":"string"
                    },
                    "triggerSpecName":{
                        "type":"string"
                    },
                    "chargeSelectorSpecName":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array"
                    },
                    "drpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/DistributionDateRangeRPEBranchJXB"
                        },
                        "type":"array"
                    },
                    "distributionConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/DistributionRPEBranchJXB"
                        },
                        "type":"array"
                    },
                    "distributionPopModelName":{
                        "type":"string"
                    },
                    "drpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB"
                    }
                },
                "type":"object"
            },
            "CompositePopModelRPEJXB":{
                "required":[
                    "name"
                ],
                "properties":{
                    "name":{
                        "type":"string",
                        "title":"name",
                        "description":"Refers to the name of the composite product offering price model rate plan. It is transfromed as <b>rate_tag name</b> used by the Batch Rating Engine."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Describes the composite product offering price model rate plan."
                    },
                    "alterationPopModel":{
                        "$ref":"#/components/schemas/AlterationPopModelJXB",
                        "description":"(required) The alteration product offering price model. It is a required field and has to be one of <b>alterationPopModel, oneTimePopModel, recurringPopModel, replacementPopModel, rolloverPopModel</b>, or <b>usageChargePopModel</b>."
                    },
                    "oneTimePopModel":{
                        "$ref":"#/components/schemas/OneTimePopModelJXB",
                        "description":"(required) The balance impacts for a one time event type. For example, <b>Product Purchase Fee, Product Cancel Fee</b>, and so on. It is a required field and has to be one of <b>alterationPopModel, oneTimePopModel, recurringPopModel, replacementPopModel, rolloverPopModel</b>, or <b>usageChargePopModel</b>."
                    },
                    "recurringPopModel":{
                        "$ref":"#/components/schemas/RecurringPopModelJXB",
                        "description":"(required) The balance impacts for a recurring event type. For example, <b>Monthly Cycle Forward fee</b>. It is a required field and has to be one of <b>alterationPopModel, oneTimePopModel, recurringPopModel, replacementPopModel, rolloverPopModel</b>, or <b>usageChargePopModel</b>."
                    },
                    "replacementPopModel":{
                        "$ref":"#/components/schemas/ReplacementPopModelJXB",
                        "description":"(required) The replacement product offering price model. It is a required field and has to be one of <b>alterationPopModel, oneTimePopModel, recurringPopModel, replacementPopModel, rolloverPopModel</b>, or <b>usageChargePopModel</b>."
                    },
                    "rolloverPopModel":{
                        "$ref":"#/components/schemas/RolloverPopModelJXB",
                        "description":"(required) The rollover product offering price model. It is a required field and has to be one of <b>alterationPopModel, oneTimePopModel, recurringPopModel, replacementPopModel, rolloverPopModel</b>, or <b>usageChargePopModel</b>."
                    },
                    "usageChargePopModel":{
                        "$ref":"#/components/schemas/UsageChargePopModelJXB",
                        "description":"(required) The usage charge for the product offering price model. It is a required field and has to be one of <b>alterationPopModel, oneTimePopModel, recurringPopModel, replacementPopModel, rolloverPopModel</b>, or <b>usageChargePopModel</b>."
                    }
                },
                "type":"object",
                "description":"Refers to the generic product offering price model. It can be <b>one-time, recurring</b>, or <b>usage type</b>."
            },
            "AlterationPopModelJXB":{
                "required":[
                    "priceTier"
                ],
                "properties":{
                    "priceTier":{
                        "$ref":"#/components/schemas/AlterationPriceTierJXB",
                        "title":"price tier",
                        "description":"Refers to the container object to define the alteration price tier."
                    }
                },
                "type":"object",
                "description":"Defines the alteration product offering price model."
            },
            "OneTimePopModelJXB":{
                "required":[
                    "priceTier"
                ],
                "properties":{
                    "priceTier":{
                        "$ref":"#/components/schemas/OneTimePriceTierJXB",
                        "title":"price tier",
                        "description":"Defines the one time price tier."
                    }
                },
                "type":"object",
                "title":"onetime pop model",
                "description":"Defines the balance impacts for a one time event type. For example, <b>Product Purchase Fee, Product Cancel Fee>/b>, and so on."
            },
            "RecurringPopModelJXB":{
                "required":[
                    "priceTier"
                ],
                "properties":{
                    "priceTier":{
                        "$ref":"#/components/schemas/RecurringPriceTierJXB",
                        "title":"price tier",
                        "description":"Defines Recurring Price Tier."
                    }
                },
                "type":"object",
                "description":"Defines the balance impacts for a recurring event type. For example, <b>Monthly Cycle Forward fee</b>."
            },
            "ReplacementPopModelJXB":{
                "required":[
                    "replacementCharge"
                ],
                "properties":{
                    "replacementCharge":{
                        "$ref":"#/components/schemas/ReplacementPopJXB",
                        "title":"replacement charge",
                        "description":"Defines the replacement product offering price."
                    }
                },
                "type":"object",
                "description":"Defines the replacement producting offer price model."
            },
            "UsageChargePopModelJXB":{
                "required":[
                    "priceTier"
                ],
                "properties":{
                    "priceTier":{
                        "items":{
                            "$ref":"#/components/schemas/ChargePriceTierJXB"
                        },
                        "type":"array",
                        "title":"price tier",
                        "description":"Defines the charge price tier."
                    }
                },
                "type":"object",
                "description":"Defines the usage charge product offering price model."
            },
            "ChargePriceTierJXB":{
                "required":[
                    "distributionMethod",
                    "rumName",
                    "priceTierValidityPeriod",
                    "applicableQuantity"
                ],
                "properties":{
                    "distributionMethod":{
                        "$ref":"#/components/schemas/DistributionMethodJXB",
                        "title":"distribution method",
                        "description":"Specifies how the basis value will be distributed across tiers. Specifies whether to <b>pick the quantity range containing the value</b> or to <b>distribute the values across applicable quantity ranges</b>. Possible values are <b>FROM_BAL_IMPACT, NONE</b>."
                    },
                    "tierBasis":{
                        "$ref":"#/components/schemas/ChargeTierExpressionJXB",
                        "title":"tier basis",
                        "description":"Refers to the container object to define charge tier expression."
                    },
                    "enforceCreditLimit":{
                        "$ref":"#/components/schemas/CreditLimitJXB",
                        "title":"enforce credit limit",
                        "description":"Indicates whether to enforce the credit limit. Enforce credit limit and minimum charge are required and they are mutually exclusive."
                    },
                    "rumName":{
                        "type":"string",
                        "title":"rum name",
                        "description":"The RUM's name."
                    },
                    "currencyCode":{
                        "type":"string",
                        "title":"currency code",
                        "description":"Refers to the three letter ISO code for the currency."
                    },
                    "priceTierValidityPeriod":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTierValidityPeriodJXB"
                        },
                        "type":"array",
                        "title":"price tier validity period",
                        "description":"Defines the charge price tier validity period structure."
                    },
                    "applicableQuantity":{
                        "$ref":"#/components/schemas/ApplicableQuantityJXB",
                        "title":"applicable quantity",
                        "description":"Specifies how a charge offer is applied on a chargable quantity. This can be <b>REMAINING</b> or <b>ORIGINAL</b> based on the type of charge offer."
                    }
                },
                "type":"object",
                "description":"Defines the charge price tier."
            },
            "DistributionMethodJXB":{
                "enum":[
                    "FROM_BAL_IMPACT",
                    "NONE"
                ],
                "type":"string",
                "description":"Specifies how the basis value will be distributed across the tiers. It specifies whether to <b>pick the quantity range containing the value</b> or to <b>distribute the value across applicable quantity ranges</b>. Possible values are <b>FROM_BAL_IMPACT, NONE</b>."
            },
            "ChargeTierExpressionJXB":{
                "properties":{
                    "rumTierExpression":{
                        "$ref":"#/components/schemas/RumChargeTierExpressionJXB",
                        "description":"(required) The tier expression for the RUM quantity. It is a required field and has to be either <b>rumTierExpression</b> or <b>balanceTierExpression</b>."
                    },
                    "balanceTierExpression":{
                        "$ref":"#/components/schemas/BalanceChargeTierExpressionJXB",
                        "description":"(required) The tier expression for balance. It is a required field and has to be either <b>rumTierExpression</b> or <b>balanceTierExpression</b>."
                    }
                },
                "type":"object",
                "description":"Refers to the base abstract entity for the tier expression."
            },
            "CreditLimitJXB":{
                "enum":[
                    "AUTO_RENEW_CANCEL",
                    "DEDUCT_RENTAL",
                    "DEFAULT",
                    "INSUFFICIENT_BALANCE",
                    "LOAN",
                    "NORMAL",
                    "OUTSTANDING_AMOUNT",
                    "RENTAL_FAILURE",
                    "SKIP_CYCLE"
                ],
                "type":"string",
                "description":"Specifies how to enforce credit limits or let customers exceed them. The default value is <b>NORMAL</b> implying to enforce the credit limit."
            },
            "PriceTierValidityPeriodJXB":{
                "required":[
                    "lowerBound",
                    "validFrom",
                    "priceTierRange"
                ],
                "properties":{
                    "minimumCharge":{
                        "items":{
                            "$ref":"#/components/schemas/MinimumChargeJXB"
                        },
                        "type":"array",
                        "title":"minimum charge",
                        "description":"Defines a minimum charge configuration for a balance element."
                    },
                    "lowerBound":{
                        "type":"string",
                        "title":"lower bound",
                        "description":"The starting value for the range. The default value is <b>0</b>."
                    },
                    "validFrom":{
                        "type":"string",
                        "title":"valid from",
                        "description":"Defines the start of the validity period. The format is <b>YYYYMMDDTHHMMSS</b> and the default value is <b>0/inf</b>."
                    },
                    "priceTierRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargePriceTierRangeJXB"
                        },
                        "type":"array",
                        "title":"price tier range",
                        "description":"Defines the charge price tier range."
                    },
                    "priceTag":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTagJXB"
                        },
                        "type":"array",
                        "title":"price tag",
                        "description":"Tags any pricing attribute at design time which can then be used at rating time to impact different prices. All elements are required except <b>description</b>."
                    }
                },
                "type":"object",
                "description":"Defines the charge price tier validity period structure."
            },
            "MinimumChargeJXB":{
                "properties":{
                    "value":{
                        "format":"double",
                        "type":"number",
                        "title":"value",
                        "description":"Defines the minimum charge value for a balance element."
                    },
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"Refers to the balance element's numeric code. For example, <b>840 for USD</b>."
                    }
                },
                "type":"object",
                "title":"minimum charge",
                "description":"Defines a minimum charge configuration for a balance element."
            },
            "ChargePriceTierRangeJXB":{
                "properties":{
                    "upperBound":{
                        "type":"string",
                        "description":"(required) The end value for the range. It is supported for backward compatibility. It is a required field and has to be either <b>upperBound</b> or <b>upperBoundExpression</b>."
                    },
                    "upperBoundExpression":{
                        "$ref":"#/components/schemas/ChargeTierBoundExpressionJXB",
                        "description":"(required) The end value for a quantity range or the noncurrency balance element to consume. It is a required field and has to be either <b>upperBound</b> or <b>upperBoundExpression</b>."
                    },
                    "fixedCharge":{
                        "items":{
                            "$ref":"#/components/schemas/FixedChargePopJXB"
                        },
                        "type":"array",
                        "description":"(required) The fixed charge product offering price. It is a required field and has to be either <b>fixedCharge</b> or <b>scaledCharge</b>."
                    },
                    "scaledCharge":{
                        "items":{
                            "$ref":"#/components/schemas/ScaledChargePopJXB"
                        },
                        "type":"array",
                        "description":"(required) The scaled charge product offering price. It is a required field and has to be either <b>fixedCharge</b> or <b>scaledCharge</b>."
                    },
                    "priceTag":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTagJXB"
                        },
                        "type":"array",
                        "title":"price tag",
                        "description":"Tags any pricing attribute at the design time which can then be used at rating time to impact different price. All elements are required except <b>description</b>."
                    }
                },
                "type":"object",
                "description":"Defines the charge price tier range."
            },
            "PriceTagJXB":{
                "required":[
                    "attributeName",
                    "tagName",
                    "tagScope"
                ],
                "properties":{
                    "attributeName":{
                        "type":"string",
                        "title":"attribute name",
                        "description":"Refers to the attribute's name. It specifies whether the price tag is applied on price (for balance impacts in rate plan and increment) or to lower bound/upper bound (for quantity ranges in usage/onetime/recurring events)."
                    },
                    "tagName":{
                        "type":"string",
                        "title":"tag name",
                        "description":"Refers to the name of the price tag configured with the charge offer."
                    },
                    "tagScope":{
                        "$ref":"#/components/schemas/PriceTagScopeJXB",
                        "title":"tag scope",
                        "description":"Refers to the price tag's scope. The default scope is <b>Event Profile</b>."
                    },
                    "description":{
                        "type":"string",
                        "title":"description",
                        "description":"Describes the price tag configured with the charge offer."
                    }
                },
                "type":"object",
                "description":"Tags any pricing attribute at design time which can then be used at rating time to impact different price. All elements are required except <b>description</b>."
            },
            "ChargeTierBoundExpressionJXB":{
                "properties":{
                    "numberTBExpression":{
                        "$ref":"#/components/schemas/NumberChargeTBExpressionJXB",
                        "description":"(required) It is a required field and must be either <b>numberTBExpression</b> or <b>balanceTBExpression</b>. Refers to the number expression for charge tier bound."
                    },
                    "balanceTBExpression":{
                        "$ref":"#/components/schemas/BalanceChargeTBExpressionJXB",
                        "description":"(required) The tier bound expression for balance. It is a required field and must be either <b>numberTBExpression</b> or <b>balanceTBExpression</b>."
                    }
                },
                "type":"object",
                "description":"Defines the end value for a quantity range or the noncurrency balance element to consume."
            },
            "FixedChargePopJXB":{
                "required":[
                    "price",
                    "unitOfMeasure",
                    "balanceElementNumCode",
                    "priceType"
                ],
                "properties":{
                    "price":{
                        "format":"double",
                        "type":"number",
                        "title":"Refers to the amount of debit or credit. For example <b>10 USD/GB/MIN</b>."
                    },
                    "unitOfMeasure":{
                        "$ref":"#/components/schemas/UnitOfMeasureJXB",
                        "title":"unit of measure",
                        "description":"Refers to the type of unit to which the charge applies. Possible values are <b>NONE, MINUTES, SECONDS, DAYS, HOURS, BYTES, GBYTES, BMYTES, MBYTES</b>."
                    },
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"Refers to the balance element's numeric code. For example, <b>840 for USD</b>."
                    },
                    "discountable":{
                        "type":"boolean",
                        "title":"discountable",
                        "description":"Refers to the boolean flag to make a balance impact discountable. The default value is <b>False</b>."
                    },
                    "priceType":{
                        "$ref":"#/components/schemas/PriceTypeJXB",
                        "title":"price type",
                        "description":"Refers to the type of impact. It can be <b>grant</b>, <b>consumption</b> or <b>aggregation</b>."
                    },
                    "taxTime":{
                        "$ref":"#/components/schemas/TaxTimeJXB",
                        "title":"tax time",
                        "description":"Refers to the time when the discount is taxed."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"tax code",
                        "description":"Refers to the tax code used for the discount."
                    },
                    "taxSelectorName":{
                        "type":"string",
                        "title":"tax selector name",
                        "description":"Refers to the the tax selector's name."
                    },
                    "taxSelectorIID":{
                        "type":"string",
                        "title":"tax selector ID",
                        "description":"Refers to the tax selector's ID."
                    },
                    "glid":{
                        "format":"int32",
                        "type":"integer",
                        "title":"general ledger ID",
                        "description":"Refers to the General Ledger's ID. It is used for selecting the required General Ledger information for a given balance impact."
                    },
                    "priceValidity":{
                        "$ref":"#/components/schemas/PriceValidityJXB",
                        "title":"price validity",
                        "description":"Defines the validity period for the credited amount in the balance impact."
                    },
                    "periodConditionExpression":{
                        "$ref":"#/components/schemas/PeriodConditionExpressionJXB",
                        "title":"period condition expression",
                        "description":"Defines the period condition expression."
                    },
                    "priceTag":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTagJXB"
                        },
                        "type":"array",
                        "title":"price tag",
                        "description":"Tags any pricing attribute at design time which can then be used at rating time to impact a different price. All elements are required except <b>description</b>."
                    }
                },
                "type":"object",
                "description":"Defines the fixed charge product offering price."
            },
            "ScaledChargePopJXB":{
                "required":[
                    "price",
                    "unitOfMeasure",
                    "balanceElementNumCode",
                    "priceType"
                ],
                "properties":{
                    "price":{
                        "format":"double",
                        "type":"number",
                        "title":"price",
                        "description":"Refers to the amount of debit or credit. For example <b>10 USD/GB/MIN</b>."
                    },
                    "unitOfMeasure":{
                        "$ref":"#/components/schemas/UnitOfMeasureJXB",
                        "title":"unit of measure",
                        "description":"Refers to the type of unit to which the pricing applies. For example <b>minute, byte</b>."
                    },
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"Refers to the balance element's numeric code. For example, <b>840 for USD</b>."
                    },
                    "discountable":{
                        "type":"boolean",
                        "title":"discountable",
                        "description":"Refers to the boolean flag to make a balance impact discountable. The default value is <b>False</b>."
                    },
                    "priceType":{
                        "$ref":"#/components/schemas/PriceTypeJXB",
                        "title":"price type",
                        "description":"Refers to the type of impact. It can be <b>grant</b>, <b>consumption</b> or <b>aggregation</b>."
                    },
                    "taxTime":{
                        "$ref":"#/components/schemas/TaxTimeJXB",
                        "title":"tax time",
                        "description":"Refers to the time when the charge is taxed."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"tax code",
                        "description":"Refers to the tax code used for the discount."
                    },
                    "taxSelectorName":{
                        "type":"string",
                        "title":"tax selector name",
                        "description":"Refers to the tax selector's name."
                    },
                    "taxSelectorIID":{
                        "type":"string",
                        "title":"tax selector id",
                        "description":"Refers to the tax selector's ID."
                    },
                    "glid":{
                        "format":"int32",
                        "type":"integer",
                        "title":"general ledger ID",
                        "description":"Refers to the General Ledger's ID. It is used for selecting the required General Ledger information for a given balance impact."
                    },
                    "priceValidity":{
                        "$ref":"#/components/schemas/PriceValidityJXB",
                        "title":"price validity",
                        "description":"Defines the validity period for the credited amount in the balance impact."
                    },
                    "incrementStep":{
                        "format":"float",
                        "type":"number",
                        "title":"increment step",
                        "description":"Specifies the smallest increment step size on which the scaled impact should be calculated (beat). The default Value is <b>1</b>."
                    },
                    "incrementRounding":{
                        "$ref":"#/components/schemas/IncrementRoundingJXB",
                        "title":"increment rounding",
                        "description":"Specifies the rounding method for the increment step. The valid values are <b>0 - None, 1 - Up and 2 -Down</b>. The default value is <b>0</b>."
                    },
                    "priceTag":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTagJXB"
                        },
                        "type":"array",
                        "title":"price tag",
                        "description":"Tags any pricing attribute at design time which can then be used at rating time to impact a different price. All elements are required except <b>description</b>."
                    }
                },
                "type":"object",
                "description":"Defines the scaled charge product offering price."
            },
            "UnitOfMeasureJXB":{
                "enum":[
                    "BYTES",
                    "DAYS",
                    "GBYTES",
                    "HOURS",
                    "KBYTES",
                    "MBYTES",
                    "MINUTES",
                    "NONE",
                    "SECONDS"
                ],
                "type":"string",
                "description":"Refers to the type of unit to which the pricing applies. For example <b>minute, byte</b>."
            },
            "PriceTypeJXB":{
                "enum":[
                    "AGGREGATION",
                    "CONSUMPTION",
                    "GRANT"
                ],
                "type":"string",
                "description":"Refers to the impact type."
            },
            "TaxTimeJXB":{
                "enum":[
                    "BILLING_TIME",
                    "DYNAMIC",
                    "EVENT_TIME",
                    "NONE",
                    "TAX_INCLUDED"
                ],
                "type":"string",
                "description":"Refers to the time when the charge is taxed."
            },
            "PriceValidityJXB":{
                "properties":{
                    "startValidityMode":{
                        "$ref":"#/components/schemas/StartValidityModeJXB",
                        "title":"start validity mode",
                        "description":"Defines the start validity mode for the price."
                    },
                    "endValidityMode":{
                        "$ref":"#/components/schemas/EndValidityModeJXB",
                        "title":"end validity model",
                        "description":"Defines the end validity mode for the price."
                    },
                    "validityRange":{
                        "type":"string",
                        "title":"validity range",
                        "description":"Defines the validity range. The <b>DateTimeRange</b> should be defined as <b>YYYYMMDDTHHMMSS</b> or <b>YYYYMMDDTHHMMSS</b>."
                    },
                    "relativeStartOffset":{
                        "type":"integer",
                        "title":"relative start offset",
                        "description":"Makes the amount valid in any number of accounting cycles, billing cycles, months, days, hours, minutes, or seconds from the event occurrence. For example, <b>if you specify two accounting cycles, the amount will be valid after two accounting cycles from when the event occurs</b>."
                    },
                    "relativeEndOffset":{
                        "type":"integer",
                        "title":"relative end offset",
                        "description":"The amount validity ends relative to the validity start time. Enter the number of accounting cycles, billing cycles, months, days, calendar days, hours, minutes, or seconds from the validity start time when the validity ends."
                    },
                    "relativeStartOffsetUnit":{
                        "$ref":"#/components/schemas/OffsetUnitJXB",
                        "title":"relative start offset unit",
                        "description":"Refers to the offset unit to measure the relative start price validity."
                    },
                    "relativeEndOffsetUnit":{
                        "$ref":"#/components/schemas/OffsetUnitJXB",
                        "title":"relative end offset unit",
                        "description":"Refers to the offset unit to measure the relative end price validity."
                    },
                    "splitDetail":{
                        "$ref":"#/components/schemas/SplitDetailJXB",
                        "title":"split detail",
                        "description":"Defines the split details for the grant between start and end date."
                    }
                },
                "type":"object",
                "description":"Defines the validity period for the credited amount in the balance impact."
            },
            "IncrementRoundingJXB":{
                "enum":[
                    "DOWN",
                    "NONE",
                    "UP"
                ],
                "type":"string",
                "description":"Specifies the rounding method for the increment step. The valid values are <b>0 - None, 1 - Up and 2 -Down</b>. The default value is <b>0</b>."
            },
            "StartValidityModeJXB":{
                "enum":[
                    "ABSOLUTE",
                    "FIRST_USAGE",
                    "FOREVER",
                    "IMMEDIATE",
                    "PERIOD_START",
                    "RELATIVE"
                ],
                "type":"string",
                "description":"Defines the start validity mode for the price."
            },
            "EndValidityModeJXB":{
                "enum":[
                    "ABSOLUTE",
                    "NEVER",
                    "RELATIVE_TO_PERIOD_START",
                    "RELATIVE_TO_START"
                ],
                "type":"string",
                "description":"Defines the end validity mode for the price."
            },
            "OffsetUnitJXB":{
                "enum":[
                    "ACCOUNTING_CYCLE",
                    "BEGIN_OF_DAY",
                    "BILLING_CYCLE",
                    "CALENDAR_DAY",
                    "DAY",
                    "EVENT_CYCLE",
                    "HOUR",
                    "MINUTE",
                    "MONTH",
                    "SECOND"
                ],
                "type":"string",
                "description":"Refers to the offset unit to measure the relative price validity cycle."
            },
            "SplitDetailJXB":{
                "required":[
                    "unitType",
                    "validityType"
                ],
                "properties":{
                    "unit":{
                        "type":"integer",
                        "title":"unit",
                        "description":"Defines the split unit. It is a number in which the grant is split. The default value is <b>-1</b>. For example, <b>in a split of 10 minutes, '10' is the unit and 'min' is the unit type</b>."
                    },
                    "unitType":{
                        "$ref":"#/components/schemas/SplitUnitTypeJXB",
                        "title":"unit type",
                        "description":"Defines the split unit type. the default value is <b>HOUR</b>."
                    },
                    "validityType":{
                        "$ref":"#/components/schemas/SplitValidityTypeJXB",
                        "title":"validity type",
                        "description":"Defines the split validity type. The default value is <b>BUCKET</b>."
                    }
                },
                "type":"object",
                "title":"split detail",
                "description":"Defines the split details for the grant between the start and end date."
            },
            "SplitUnitTypeJXB":{
                "enum":[
                    "DAY",
                    "HOUR",
                    "MINUTE",
                    "MONTH",
                    "SECOND"
                ],
                "type":"string",
                "description":"Defines the split measurement unit."
            },
            "SplitValidityTypeJXB":{
                "enum":[
                    "BUCKET",
                    "TOTAL"
                ],
                "type":"string",
                "description":"Defines the split validity type. The default value is <b>BUCKET</b>."
            },
            "PeriodConditionExpressionJXB":{
                "required":[
                    "unit",
                    "value",
                    "periodStartTime"
                ],
                "properties":{
                    "biConditionOperator":{
                        "$ref":"#/components/schemas/BIConditionOperatorJXB",
                        "title":"bi-condition operator",
                        "description":"Defines the balance impact condition operator."
                    },
                    "unit":{
                        "$ref":"#/components/schemas/BIConditionUnitJXB",
                        "title":"unit",
                        "description":"Defines the unit of the Period Condition Expression."
                    },
                    "value":{
                        "type":"integer",
                        "title":"value",
                        "description":"Defines the value of the Period Condition Expression."
                    },
                    "periodStartTime":{
                        "$ref":"#/components/schemas/PeriodStartTimeJXB",
                        "title":"period start time",
                        "description":"Defines the Period Start Time."
                    }
                },
                "type":"object",
                "title":"period condition expression",
                "description":"Defines the Period Condition Expression."
            },
            "BIConditionOperatorJXB":{
                "enum":[
                    "EQUAL_TO"
                ],
                "type":"string",
                "description":"Defines the balance impact condition operator <b>EQUAL TO</b>."
            },
            "BIConditionUnitJXB":{
                "enum":[
                    "DAY",
                    "HOUR"
                ],
                "type":"string",
                "description":"Defines the unit of the Period Condition Expression."
            },
            "PeriodStartTimeJXB":{
                "enum":[
                    "ALIGN_WITH_OFFER_START",
                    "BEGIN_OF_CALENDAR_UNIT",
                    "IMMEDIATE"
                ],
                "type":"string",
                "description":"Defines the Period Start Time."
            },
            "NumberChargeTBExpressionJXB":{
                "properties":{
                    "value":{
                        "type":"string",
                        "title":"value",
                        "description":"Refers to the numeric value for the tier bound. It is <b>Float.POSITIVE_INFINITY</b> for Inf and <b>Float.NEGATIVE_INFINITY</b> for -Inf."
                    }
                },
                "type":"object",
                "title":"number charge tier bound expression",
                "description":"Refers to the number expression for the charge tier bound."
            },
            "BalanceChargeTBExpressionJXB":{
                "properties":{
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"Defines the balance element's numeric code."
                    }
                },
                "type":"object",
                "title":"balance charge tier bound expression",
                "description":"Refers to the tier bound expression for balance."
            },
            "RumChargeTierExpressionJXB":{
                "type":"object",
                "description":"Refers to the tier expression base object for RUM quantity for charge."
            },
            "BalanceChargeTierExpressionJXB":{
                "properties":{
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"Defines the numeric code for the balance element."
                    }
                },
                "type":"object",
                "title":"balance charge tier expression",
                "description":"Refers to the tier expression for balance for a charge."
            },
            "ReplacementPopJXB":{
                "required":[
                    "type",
                    "price",
                    "balanceElementNumCode"
                ],
                "properties":{
                    "glid":{
                        "format":"int32",
                        "type":"integer",
                        "title":"General Ledger ID",
                        "description":"Refers to the General Ledger's ID. It is used for selecting the required General Ledger Information for a given balance impact."
                    },
                    "type":{
                        "$ref":"#/components/schemas/ReplacementTypeJXB",
                        "title":"type",
                        "description":"Specifies how the charge should be modified. The values are <b>0 - percentage, 1 -absolute value and 2 - replace with a specific value</b>. For example <b>ABSOULTE_VALUE, PERCENTAGE, REPLACEMENT_VALUE</b>."
                    },
                    "taxTime":{
                        "$ref":"#/components/schemas/TaxTimeJXB",
                        "title":"tax time",
                        "description":"Refers to the time when the discount is taxed."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"tax code",
                        "description":"Refers to the tax code used for the discount."
                    },
                    "price":{
                        "format":"double",
                        "type":"number",
                        "title":"price",
                        "description":"The amount of debit or credit. For example <b>10 USD/GB/MIN</b>."
                    },
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"Refers to the balance element's numeric code. For example, <b>840 for USD</b>."
                    },
                    "rumName":{
                        "type":"string",
                        "title":"rum name",
                        "description":"The RUM's name."
                    }
                },
                "type":"object",
                "description":"Defines the replacement product offering price."
            },
            "ReplacementTypeJXB":{
                "enum":[
                    "ABSOLUTE_VALUE",
                    "PERCENTAGE",
                    "REPLACEMENT_VALUE"
                ],
                "type":"string",
                "description":"Specifies how the charge should be modified. The values are <b>0 - percentage, 1 -absolute value</b>, and <b>2 - replace with a specific value</b>. For example <b>ABSOULTE_VALUE, PERCENTAGE, REPLACEMENT_VALUE</b>."
            },
            "RecurringPriceTierJXB":{
                "required":[
                    "lowerBound",
                    "tierBasis",
                    "rumName",
                    "tierRange"
                ],
                "properties":{
                    "lowerBound":{
                        "type":"string",
                        "title":"lower bound",
                        "description":"The starting value for the range. The default value is <b>NO_MIN</b>."
                    },
                    "tierBasis":{
                        "$ref":"#/components/schemas/ChargeTierExpressionJXB",
                        "title":"tier basis",
                        "description":"The base abstract entity for the tier expression."
                    },
                    "rumName":{
                        "type":"string",
                        "title":"rum name",
                        "description":"The RUM's name."
                    },
                    "enforceCreditLimit":{
                        "$ref":"#/components/schemas/CreditLimitJXB",
                        "title":"enforce credit limit",
                        "description":"Specifies how to enforce credit limits or let customers exceed them. The default is <b>NORMAL</b> implying to enforce the credit limit."
                    },
                    "creditLimitProrateQuantity":{
                        "type":"boolean",
                        "title":"credit limit prorate quantity",
                        "description":"If the service must be prorated according to the minimum amount. By default, this is set to true and the service will be prorated. Set this to false to grant the full service for the minimum amount."
                    },
                    "tierRange":{
                        "items":{
                            "$ref":"#/components/schemas/RecurringPriceTierRangeJXB"
                        },
                        "type":"array",
                        "title":"tier range",
                        "description":"Defines the recurring price tier range."
                    }
                },
                "type":"object",
                "description":"Defines the recurring price tier."
            },
            "RecurringPriceTierRangeJXB":{
                "required":[
                    "upperBound",
                    "recurringCharge"
                ],
                "properties":{
                    "upperBound":{
                        "type":"string",
                        "title":"upper bound",
                        "description":"Refers to the maximum value of the range. It supports expressions."
                    },
                    "recurringCharge":{
                        "items":{
                            "$ref":"#/components/schemas/RecurringChargePopJXB"
                        },
                        "type":"array",
                        "title":"recurring charge",
                        "description":"Defines the recurring charge product offering price."
                    }
                },
                "type":"object",
                "description":"Defines the recurring price tier range."
            },
            "RecurringChargePopJXB":{
                "required":[
                    "price",
                    "unitOfMeasure",
                    "balanceElementNumCode",
                    "priceType",
                    "proratable",
                    "impactType"
                ],
                "properties":{
                    "price":{
                        "format":"double",
                        "type":"number",
                        "title":"price",
                        "description":"The amount of debit or credit. For example <b>10 USD/GB/MIN</b>."
                    },
                    "unitOfMeasure":{
                        "$ref":"#/components/schemas/UnitOfMeasureJXB",
                        "title":"unit of measure",
                        "description":"The type of unit to which the charge applies. Possible values are <b>NONE, MINUTES, SECONDS, DAYS, HOURS, BYTES, GBYTES, BMYTES, MBYTES</b>."
                    },
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"The balance element's numeric code. For example, <b>840 for USD</b>."
                    },
                    "discountable":{
                        "type":"boolean",
                        "title":"discountable",
                        "description":"Makes a balance impact discountable. The default value is <b>False</b>."
                    },
                    "priceType":{
                        "$ref":"#/components/schemas/PriceTypeJXB",
                        "title":"price type",
                        "description":"Refers to the type of impact. It can be <b>grant</b>, <b>consumption</b> or <b>aggregation</b>."
                    },
                    "taxTime":{
                        "$ref":"#/components/schemas/TaxTimeJXB",
                        "title":"tax time",
                        "description":"The time when the discount is taxed."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"tax code",
                        "description":"The tax code used for the discount."
                    },
                    "taxSelectorName":{
                        "type":"string",
                        "title":"tax selector name",
                        "description":"The tax selector's name."
                    },
                    "taxSelectorIID":{
                        "type":"string",
                        "title":"tax selector ID",
                        "description":"The tax selector's ID."
                    },
                    "glid":{
                        "format":"int32",
                        "type":"integer",
                        "title":"general ledger ID",
                        "description":"The general ledger's ID. It is used for selecting the required general ledger information for a given balance impact."
                    },
                    "priceValidity":{
                        "$ref":"#/components/schemas/PriceValidityJXB",
                        "title":"price validity",
                        "description":"Defines the validity period for the credited amount in the balance impact."
                    },
                    "proratable":{
                        "type":"boolean",
                        "title":"proratable",
                        "description":"A boolean flag that sets proration. The default is <b>true</b>."
                    },
                    "impactType":{
                        "$ref":"#/components/schemas/ImpactTypeJXB",
                        "title":"impact type",
                        "description":"Specifies whether the impact is fixed or scaled."
                    },
                    "creditLimitMinimumAmount":{
                        "format":"double",
                        "type":"number",
                        "title":"credit limit mininum amount",
                        "description":"The minimum amount for currency resources. By default, this is set to 0, which means the subscription fails if the balance is less than the full amount. It is not applicable for noncurrency resources."
                    },
                    "priceTag":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTagJXB"
                        },
                        "type":"array",
                        "title":"price tag",
                        "description":"Tags any pricing attribute at design time which then can be used at rating time to impact different price. All elements are required except <b>description</b>."
                    }
                },
                "type":"object",
                "description":"Defines the recurring charge product offering price."
            },
            "ImpactTypeJXB":{
                "enum":[
                    "FIXED",
                    "SCALED"
                ],
                "type":"string",
                "description":"Specifies whether the impact is fixed or scaled."
            },
            "OneTimePriceTierJXB":{
                "required":[
                    "lowerBound",
                    "tierBasis",
                    "rumName",
                    "tierRange"
                ],
                "properties":{
                    "lowerBound":{
                        "type":"string",
                        "title":"lower bound",
                        "description":"The starting value for the range. The default value is <b>0</b>."
                    },
                    "tierBasis":{
                        "$ref":"#/components/schemas/ChargeTierExpressionJXB",
                        "title":"tier basis",
                        "description":"A container object that defines the charge tier expression."
                    },
                    "rumName":{
                        "type":"string",
                        "title":"rum name",
                        "description":"Name of the RUM."
                    },
                    "enforceCreditLimit":{
                        "$ref":"#/components/schemas/CreditLimitJXB",
                        "title":"enforce credit limit",
                        "description":"Specifies how to enforce credit limits or let customers exceed them. The default is <b>NORMAL</b> implying to enforce the credit limit."
                    },
                    "creditLimitProrateQuantity":{
                        "type":"boolean",
                        "title":"credit limit prorate quantity",
                        "description":"Indicates whether to set prorate quantity if credit limit value is <b>insufficient_balance</b>. the default is <b>true</b>."
                    },
                    "tierRange":{
                        "items":{
                            "$ref":"#/components/schemas/OneTimePriceTierRangeJXB"
                        },
                        "type":"array",
                        "title":"tier range",
                        "description":"Defines the one time price tier range."
                    }
                },
                "type":"object",
                "title":"one time price tier",
                "description":"Defines the one time price tier."
            },
            "OneTimePriceTierRangeJXB":{
                "required":[
                    "upperBound",
                    "oneTimeCharge"
                ],
                "properties":{
                    "upperBound":{
                        "type":"string",
                        "title":"upper bound",
                        "description":"The end value for the range. It is only supported for backward compatibility. The default value is <b>NO_MAX</b>."
                    },
                    "oneTimeCharge":{
                        "items":{
                            "$ref":"#/components/schemas/OneTimeChargePopJXB"
                        },
                        "type":"array",
                        "title":"one time charge",
                        "description":"The end value for the range. It is only supported for backward compatibility."
                    }
                },
                "type":"object",
                "title":"one time price tier range",
                "description":"The range of the one-time price tier."
            },
            "OneTimeChargePopJXB":{
                "required":[
                    "price",
                    "unitOfMeasure",
                    "balanceElementNumCode",
                    "priceType"
                ],
                "properties":{
                    "price":{
                        "format":"double",
                        "type":"number",
                        "title":"price",
                        "description":"The amount to debit or credit."
                    },
                    "unitOfMeasure":{
                        "$ref":"#/components/schemas/UnitOfMeasureJXB",
                        "title":"unit of measure",
                        "description":"The type of unit to which the charge applies. Possible values are <b>NONE, MINUTES, SECONDS, DAYS, HOURS, BYTES, GBYTES, BMYTES, MBYTES</b>."
                    },
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"The balance element's numeric code. For example, <b>840 for USD</b>."
                    },
                    "discountable":{
                        "type":"boolean",
                        "title":"discountable",
                        "description":"Makes a balance impact discountable. The default value is <b>False</b>."
                    },
                    "priceType":{
                        "$ref":"#/components/schemas/PriceTypeJXB",
                        "title":"price type",
                        "description":"Refers to the type of impact. It can be <b>grant</b> or <b>consumption</b>."
                    },
                    "taxTime":{
                        "$ref":"#/components/schemas/TaxTimeJXB",
                        "title":"tax time",
                        "description":"The time when the discount is taxed."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"tax code",
                        "description":"The tax code used for the discount."
                    },
                    "taxSelectorName":{
                        "type":"string",
                        "title":"tax selector name",
                        "description":"The tax selector's name."
                    },
                    "taxSelectorIID":{
                        "type":"string",
                        "title":"tax selector ID",
                        "description":"The tax selector's ID."
                    },
                    "glid":{
                        "format":"int32",
                        "type":"integer",
                        "title":"General Ledger ID.",
                        "description":"The general ledger's ID. It is used for selecting the required general ledger information for a given balance impact."
                    },
                    "priceValidity":{
                        "$ref":"#/components/schemas/PriceValidityJXB",
                        "title":"price validity",
                        "description":"Defines the validity period for the credited amount in the balance impact."
                    },
                    "impactType":{
                        "$ref":"#/components/schemas/ImpactTypeJXB",
                        "title":"impact type",
                        "description":"Specifies whether the impact is fixed or scaled."
                    },
                    "creditLimitMinimumAmount":{
                        "format":"double",
                        "type":"number",
                        "title":"credit limit minimum amount",
                        "description":"The minimum amount for currency resources. By default, this is set to 0, which means the subscription fails if the balance is less than the full amount. It is not applicable for noncurrency resources."
                    },
                    "priceTag":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTagJXB"
                        },
                        "type":"array",
                        "title":"price tag",
                        "description":"Tags any pricing attribute at design time which then can be used at rating time to impact different price. All elements except are required except <b>description</b>."
                    }
                },
                "type":"object",
                "title":"one time charge pop",
                "description":"Refers to non recurring charges. For example, <b>setup, cancellation fees</b>."
            },
            "AlterationPriceTierJXB":{
                "required":[
                    "distributionMethod",
                    "tierBasis",
                    "lowerBound",
                    "tierRange"
                ],
                "properties":{
                    "distributionMethod":{
                        "$ref":"#/components/schemas/DistributionMethodJXB",
                        "title":"distribution method",
                        "description":"Specifies how the basis value will be distributed across the tiers. Options include to <b>pick the quantity range containing the value</b> or <b>distribute value across applicable quantity ranges</b>. Possible values are <b>FROM_BAL_IMPACT, NONE</b>."
                    },
                    "tierBasis":{
                        "$ref":"#/components/schemas/AlterationTierExpressionJXB",
                        "title":"tier basis",
                        "description":"The container object that defines alteration tier expression."
                    },
                    "lowerBound":{
                        "$ref":"#/components/schemas/AlterationTierBoundExpressionJXB",
                        "title":"lower bound",
                        "description":"The base entity for alteration lower bound Expression."
                    },
                    "tierRange":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationPriceTierRangeJXB"
                        },
                        "type":"array",
                        "title":"tier range",
                        "description":"The container object that defines the charge tier range."
                    }
                },
                "type":"object",
                "title":"alteration price tier",
                "description":"The container object that defines the alteration price tier."
            },
            "AlterationTierExpressionJXB":{
                "properties":{
                    "quantityTierExpression":{
                        "$ref":"#/components/schemas/QuantityAlterationBasisExpressionJXB",
                        "description":"(required) The tier basis expression for RUM quantity. This is a required field and has to be one of <b>quantityTierExpression, balanceTierExpression, chargeTierExpression, customTierExpression, binaryTierExpression</b>, or <b>numberTierExpression</b>."
                    },
                    "balanceTierExpression":{
                        "$ref":"#/components/schemas/BalanceAlterationBasisExpressionJXB",
                        "description":"(required) The tier basis expression for balance. This is a required field and has to be one of <b>quantityTierExpression, balanceTierExpression, chargeTierExpression, customTierExpression, binaryTierExpression</b>, or <b>numberTierExpression</b>."
                    },
                    "chargeTierExpression":{
                        "$ref":"#/components/schemas/ChargeAlterationBasisExpressionJXB",
                        "description":"(required) The tier basis expression for charge. This is a required field and has to be one of <b>quantityTierExpression, balanceTierExpression, chargeTierExpression, customTierExpression, binaryTierExpression</b>, or <b>numberTierExpression</b>."
                    },
                    "customTierExpression":{
                        "$ref":"#/components/schemas/CustomAlterationBasisExpressionJXB",
                        "description":"(required) The user defined tier basis expression. This is a required field and has to be one of <b>quantityTierExpression, balanceTierExpression, chargeTierExpression, customTierExpression, binaryTierExpression</b>, or <b>numberTierExpression</b>."
                    },
                    "binaryTierExpression":{
                        "$ref":"#/components/schemas/BinaryAlterationBasisExpressionJXB",
                        "description":"(required) The tier basis expression for binary operation. This is a required field and has to be one of <b>quantityTierExpression, balanceTierExpression, chargeTierExpression, customTierExpression, binaryTierExpression</b>, or <b>numberTierExpression</b>."
                    },
                    "numberTierExpression":{
                        "$ref":"#/components/schemas/NumberAlterationBasisExpressionJXB",
                        "description":"(required) The number expression for tier basis. This is a required field and has to be one of <b>quantityTierExpression, balanceTierExpression, chargeTierExpression, customTierExpression, binaryTierExpression</b>, or <b>numberTierExpression</b>."
                    }
                },
                "type":"object",
                "title":"alteration tier expression",
                "description":"The container object that defines alteration tier expression."
            },
            "AlterationTierBoundExpressionJXB":{
                "properties":{
                    "numberTBExpression":{
                        "$ref":"#/components/schemas/NumberAlterationTBExpressionJXB",
                        "description":"(required) The alteration tier bound expression for Number. This is a required field and has to be one of <b>numberTBExpression, balanceTBExpression, customTBExpression, binaryTBExpression, quantityTBExpression</b>, or <b>chargeTBExpression</b>."
                    },
                    "balanceTBExpression":{
                        "$ref":"#/components/schemas/BalanceAlterationTBExpressionJXB",
                        "description":"(required) The alteration tier bound expression for balance. This is a required field and has to be one of <b>numberTBExpression, balanceTBExpression, customTBExpression, binaryTBExpression, quantityTBExpression</b>, or <b>chargeTBExpression</b>"
                    },
                    "customTBExpression":{
                        "$ref":"#/components/schemas/CustomAlterationTBExpressionJXB",
                        "description":"(required) The user defined tier bound expression. This is a required field and has to be one of <b>numberTBExpression, balanceTBExpression, customTBExpression, binaryTBExpression, quantityTBExpression</b>, or <b>chargeTBExpression</b>"
                    },
                    "binaryTBExpression":{
                        "$ref":"#/components/schemas/BinaryAlterationTBExpressionJXB",
                        "description":"(required) The tier bound expression for binary operation. This is a required field and has to be one of <b>numberTBExpression, balanceTBExpression, customTBExpression, binaryTBExpression, quantityTBExpression</b>, or <b>chargeTBExpression</b>"
                    },
                    "quantityTBExpression":{
                        "$ref":"#/components/schemas/QuantityAlterationTBExpressionJXB",
                        "description":"(required) The tier bound expression for RUM quantity. This is a required field and has to be one of <b>numberTBExpression, balanceTBExpression, customTBExpression, binaryTBExpression, quantityTBExpression</b>, or <b>chargeTBExpression</b>"
                    },
                    "chargeTBExpression":{
                        "$ref":"#/components/schemas/ChargeAlterationTBExpressionJXB",
                        "description":"(required) The tier bound expression for charge. This is a required field and has to be one of <b>numberTBExpression, balanceTBExpression, customTBExpression, binaryTBExpression, quantityTBExpression</b>, or <b>chargeTBExpression</b>"
                    }
                },
                "type":"object",
                "title":"alteration tier bound expression",
                "description":"The base entity for alteration lower bound Expression."
            },
            "AlterationPriceTierRangeJXB":{
                "required":[
                    "upperBound"
                ],
                "properties":{
                    "upperBound":{
                        "$ref":"#/components/schemas/AlterationTierBoundExpressionJXB",
                        "title":"upper bound",
                        "description":"The base entity for alteration upper bound Expression."
                    },
                    "fixedAlteration":{
                        "items":{
                            "$ref":"#/components/schemas/FixedAlterationPopJXB"
                        },
                        "type":"array",
                        "description":"(required) The fixed alteration product offering price. This is a required field and has to be one of <b>fixedAlteration</b> or <b>percentAlteration</b>."
                    },
                    "percentAlteration":{
                        "items":{
                            "$ref":"#/components/schemas/PercentAlterationPopJXB"
                        },
                        "type":"array",
                        "description":"(required) The percentage alteration value. This is a required field and has to be one of <b>fixedAlteration</b> or <b>percentAlteration</b>."
                    }
                },
                "type":"object",
                "title":"alteration price tier range",
                "description":"The container object that defines the charge tier range."
            },
            "FixedAlterationPopJXB":{
                "required":[
                    "price",
                    "unitOfMeasure",
                    "balanceElementNumCode",
                    "alterationAppliesTo",
                    "alterationBasedOn",
                    "priceType",
                    "incrementStep",
                    "prorateLastIncrementStep"
                ],
                "properties":{
                    "price":{
                        "format":"double",
                        "type":"number",
                        "title":"price",
                        "description":"The amount that is discounted."
                    },
                    "unitOfMeasure":{
                        "$ref":"#/components/schemas/UnitOfMeasureJXB",
                        "title":"unit of measure",
                        "description":"The type of unit to which the charge applies.  Possible values are <b>NONE, MINUTES, SECONDS, DAYS, HOURS, BYTES, GBYTES, BMYTES, MBYTES</b>."
                    },
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"The balance element configuration object's numeric code."
                    },
                    "alterationAppliesTo":{
                        "$ref":"#/components/schemas/AlterationRecipientTypeJXB",
                        "title":"alteration applied to",
                        "description":"Specifies which object owner the balance should be applied to. Possible values are <b>payer, user, both</b>."
                    },
                    "alterationBasedOn":{
                        "$ref":"#/components/schemas/AlterationBasisExpressionJXB",
                        "title":"alteration based on",
                        "description":"Defines on how much quantity the alteration/discount must be applied. It is defined at the pricing level."
                    },
                    "priceType":{
                        "$ref":"#/components/schemas/PriceTypeJXB",
                        "title":"price type",
                        "description":"The type of impact. It can be <b>grant, consumption</b> or <b>aggregation</b>."
                    },
                    "taxTime":{
                        "$ref":"#/components/schemas/TaxTimeJXB",
                        "title":"tax time",
                        "description":"The time when the discount is taxed."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"tax code",
                        "description":"The tax code used for the discount."
                    },
                    "taxSelectorName":{
                        "type":"string",
                        "title":"tax selector name",
                        "description":"The tax selector's name."
                    },
                    "taxSelectorIID":{
                        "type":"string",
                        "title":"tax selector ID",
                        "description":"The tax selector's ID."
                    },
                    "glid":{
                        "format":"int32",
                        "type":"integer",
                        "title":"General Ledger ID",
                        "description":"The general ledger's ID. It is used for selecting the required general ledger information for a given balance impact."
                    },
                    "priceValidity":{
                        "$ref":"#/components/schemas/PriceValidityJXB",
                        "title":"price validity",
                        "description":"Defines the validity period for the credited amount in the balance impact."
                    },
                    "incrementStep":{
                        "format":"float",
                        "type":"number",
                        "title":"increment step",
                        "description":"The smallest increment step size on which the scaled impact should be calculated (beat). The default value is <b>1</b>."
                    },
                    "prorateLastIncrementStep":{
                        "type":"boolean",
                        "title":"prorate last increment",
                        "description":"Prorates the last increment step."
                    },
                    "priceTag":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTagJXB"
                        },
                        "type":"array",
                        "title":"price tag",
                        "description":"Tags any pricing attribute at design time which then can be used at rating time to impact different price. All elements are required except <b>description</b>."
                    }
                },
                "type":"object",
                "title":"fixed alteration pop",
                "description":"Defines the fixed alteration product offering price."
            },
            "PercentAlterationPopJXB":{
                "required":[
                    "price",
                    "unitOfMeasure",
                    "balanceElementNumCode",
                    "alterationAppliesTo",
                    "alterationBasedOn",
                    "priceType"
                ],
                "properties":{
                    "price":{
                        "format":"double",
                        "type":"number",
                        "title":"price",
                        "description":"Applies to the amount discounted."
                    },
                    "unitOfMeasure":{
                        "$ref":"#/components/schemas/UnitOfMeasureJXB",
                        "title":"unit of measure",
                        "description":"The unit type to which the discount applies. Possible values are <b>NONE, MINUTES, SECONDS, DAYS, HOURS, BYTES, GBYTES, BMYTES, MBYTES</b>."
                    },
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"The balance element configuration object's numeric code."
                    },
                    "alterationAppliesTo":{
                        "$ref":"#/components/schemas/AlterationRecipientTypeJXB",
                        "title":"alteration applies to",
                        "description":"Specifies to which object owner the balance should be applied. Possible values are <b>payer, user, both</b>."
                    },
                    "alterationBasedOn":{
                        "$ref":"#/components/schemas/AlterationBasisExpressionJXB",
                        "title":"alteration based on",
                        "description":"Defines the quantity to which the alteration/discount must be applied. It is defined at the pricing level."
                    },
                    "priceType":{
                        "$ref":"#/components/schemas/PriceTypeJXB",
                        "title":"price type",
                        "description":"The type of impact. It can ve <b>grant</b>, <b>consumption</b> or <b>aggregation</b>."
                    },
                    "taxTime":{
                        "$ref":"#/components/schemas/TaxTimeJXB",
                        "title":"tax time",
                        "description":"The time when the discount is taxed."
                    },
                    "taxCode":{
                        "type":"string",
                        "title":"tax code",
                        "description":"The discount's tax code."
                    },
                    "taxSelectorName":{
                        "type":"string",
                        "title":"tax selector name",
                        "description":"The tax selector's name."
                    },
                    "taxSelectorIID":{
                        "type":"string",
                        "title":"tax selector ID",
                        "description":"The tax selector's ID."
                    },
                    "glid":{
                        "format":"int32",
                        "type":"integer",
                        "title":"General Ledger ID",
                        "description":"The general ledger's ID. It is used for selecting the required general ledger information for a given balance impact."
                    },
                    "priceValidity":{
                        "$ref":"#/components/schemas/PriceValidityJXB",
                        "title":"price validity",
                        "description":"Defines the validity period for the credited amount in the balance impact."
                    },
                    "priceTag":{
                        "items":{
                            "$ref":"#/components/schemas/PriceTagJXB"
                        },
                        "type":"array",
                        "title":"price tag",
                        "description":"Tags any pricing attribute at design time which then can be used at rating time to impact different price. All elements are required except <b>description</b>."
                    }
                },
                "type":"object",
                "title":"percent alteration pop",
                "description":"Defines the percentage alteration value."
            },
            "AlterationRecipientTypeJXB":{
                "enum":[
                    "BOTH",
                    "PAYER",
                    "USER"
                ],
                "type":"string",
                "description":"Specifies to which object owner the balance should be applied. Possible values are <b>payer, user, both</b>."
            },
            "AlterationBasisExpressionJXB":{
                "properties":{
                    "quantityBasisExpression":{
                        "$ref":"#/components/schemas/QuantityAlterationBasisExpressionJXB",
                        "description":"(required) The tier basis expression for RUM Quantity. It is a required field and has to be one of <b>quantityBasisExpression, balanceBasisExpression, chargeBasisExpression, customBasisExpression, numberBasisExpression</b>, or <b>binaryBasisExpression</b>."
                    },
                    "balanceBasisExpression":{
                        "$ref":"#/components/schemas/BalanceAlterationBasisExpressionJXB",
                        "description":"(required) The tier basis expression for balance. It is a required field and has to be one of <b>quantityBasisExpression, balanceBasisExpression, chargeBasisExpression, customBasisExpression, numberBasisExpression</b>, or <b>binaryBasisExpression</b>."
                    },
                    "chargeBasisExpression":{
                        "$ref":"#/components/schemas/ChargeAlterationBasisExpressionJXB",
                        "description":"(required) The tier basis expression for charge. It is a required field and has to be one of <b>quantityBasisExpression, balanceBasisExpression, chargeBasisExpression, customBasisExpression, numberBasisExpression</b>, or <b>binaryBasisExpression</b>."
                    },
                    "customBasisExpression":{
                        "$ref":"#/components/schemas/CustomAlterationBasisExpressionJXB",
                        "description":"(required) The user defined tier basis expression. It is a required field and has to be one of <b>quantityBasisExpression, balanceBasisExpression, chargeBasisExpression, customBasisExpression, numberBasisExpression</b>, or <b>binaryBasisExpression</b>."
                    },
                    "numberBasisExpression":{
                        "$ref":"#/components/schemas/NumberAlterationBasisExpressionJXB",
                        "description":"(required) The number expression for tier basis. It is a required field and has to be one of <b>quantityBasisExpression, balanceBasisExpression, chargeBasisExpression, customBasisExpression, numberBasisExpression</b>, or <b>binaryBasisExpression</b>."
                    },
                    "binaryBasisExpression":{
                        "$ref":"#/components/schemas/BinaryAlterationBasisExpressionJXB",
                        "description":"(required) The tier basis expression for binary operation. It is a required field and has to be one of <b>quantityBasisExpression, balanceBasisExpression, chargeBasisExpression, customBasisExpression, numberBasisExpression</b>, or <b>binaryBasisExpression</b>."
                    }
                },
                "type":"object",
                "title":"alteration basis expression",
                "description":"Specifies the left operand of alteration basis expression."
            },
            "QuantityAlterationBasisExpressionJXB":{
                "required":[
                    "useTierComponent"
                ],
                "properties":{
                    "useTierComponent":{
                        "type":"boolean",
                        "title":"user tier component",
                        "description":"Indiactes whether to only use tier component."
                    }
                },
                "type":"object",
                "title":"quantity alteration basis expression",
                "description":"The tier basis expression for RUM Quantity."
            },
            "BalanceAlterationBasisExpressionJXB":{
                "required":[
                    "balanceElementNumCode"
                ],
                "properties":{
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"Defines the balance element numeric code."
                    },
                    "memberBalance":{
                        "type":"boolean",
                        "title":"member balance",
                        "description":"If the discount is associated with the member balance group, then the value is <b>true</b>."
                    }
                },
                "type":"object",
                "title":"balance alteration basis expression",
                "description":"The tier basis expression for Balance."
            },
            "ChargeAlterationBasisExpressionJXB":{
                "properties":{
                    "useTierComponent":{
                        "type":"boolean",
                        "title":"user tier component",
                        "description":"Indiactes whether to only use the tier component."
                    },
                    "preRated":{
                        "type":"boolean",
                        "title":"pre rated",
                        "description":"Indicates whether the charge is prerated."
                    }
                },
                "type":"object",
                "title":"charge alteration basis expression",
                "description":"The tier basis expression for Charge."
            },
            "CustomAlterationBasisExpressionJXB":{
                "required":[
                    "functionName"
                ],
                "properties":{
                    "functionName":{
                        "type":"string",
                        "title":"function name",
                        "description":"The custom method's name."
                    }
                },
                "type":"object",
                "title":"custom alteration basis expression",
                "description":"The user defined tier basis expression."
            },
            "NumberAlterationBasisExpressionJXB":{
                "required":[
                    "value"
                ],
                "properties":{
                    "value":{
                        "format":"double",
                        "type":"number",
                        "title":"value",
                        "description":"The numeric value for the tier basis."
                    }
                },
                "type":"object",
                "title":"number alteration basis expression",
                "description":"The number expression for the tier basis."
            },
            "BinaryAlterationBasisExpressionJXB":{
                "required":[
                    "binaryOperator",
                    "leftOperand",
                    "rightOperand"
                ],
                "properties":{
                    "binaryOperator":{
                        "type":"string",
                        "title":"binary operator",
                        "description":"An arithmatic operator for binary expression."
                    },
                    "leftOperand":{
                        "$ref":"#/components/schemas/AlterationBasisExpressionJXB",
                        "title":"left operand",
                        "description":"Specifies the left operand of the alteration basis expression."
                    },
                    "rightOperand":{
                        "$ref":"#/components/schemas/AlterationBasisExpressionJXB",
                        "title":"right operand",
                        "description":"Specifies the right operand of the alteration basis expression."
                    }
                },
                "type":"object",
                "title":"binary alteration basis expression",
                "description":"The tier basis expression for binary operation."
            },
            "NumberAlterationTBExpressionJXB":{
                "required":[
                    "value"
                ],
                "properties":{
                    "value":{
                        "type":"string",
                        "title":"value",
                        "description":"The tier bound's numeric value."
                    }
                },
                "type":"object",
                "title":"number alteration tier bound expression",
                "description":"The alteration tier bound expression for Number."
            },
            "BalanceAlterationTBExpressionJXB":{
                "required":[
                    "balanceElementNumCode"
                ],
                "properties":{
                    "balanceElementNumCode":{
                        "format":"int64",
                        "type":"integer",
                        "title":"balance element num code",
                        "description":"The balance element configuration object's numeric code."
                    },
                    "memberBalance":{
                        "type":"boolean",
                        "title":"member balance",
                        "description":"If the discount is associated with a member balance group, then the value is <b>true</b>."
                    }
                },
                "type":"object",
                "title":"balance alteration tier bound expression",
                "description":"The alteration tier bound expression for Balance."
            },
            "CustomAlterationTBExpressionJXB":{
                "required":[
                    "functionName"
                ],
                "properties":{
                    "functionName":{
                        "type":"string",
                        "title":"function name",
                        "description":"The custom method's name."
                    }
                },
                "type":"object",
                "title":"custom alteration tier bound expression",
                "description":"The user defined tier bound expression."
            },
            "BinaryAlterationTBExpressionJXB":{
                "required":[
                    "binaryOperator",
                    "leftOperand",
                    "rightOperand"
                ],
                "properties":{
                    "binaryOperator":{
                        "type":"string",
                        "title":"binary operator",
                        "description":"An arithmatic operator for the binary tier bound expression."
                    },
                    "leftOperand":{
                        "$ref":"#/components/schemas/AlterationTierBoundExpressionJXB",
                        "title":"left operand",
                        "description":"Specifies the left operand of the alteration tier bound expression."
                    },
                    "rightOperand":{
                        "$ref":"#/components/schemas/AlterationTierBoundExpressionJXB",
                        "title":"right operand",
                        "description":"Specifies the right operand of the alteration bound expression."
                    }
                },
                "type":"object",
                "title":"binary alteration tier bound expression",
                "description":"The tier bound expression for Binary operation."
            },
            "QuantityAlterationTBExpressionJXB":{
                "required":[
                    "useTierComponent"
                ],
                "properties":{
                    "useTierComponent":{
                        "type":"boolean",
                        "title":"user tier component",
                        "description":"Indicates whether to only use the tier component."
                    }
                },
                "type":"object",
                "title":"quantity alteration tier bound expression",
                "description":"The tier bound expression for RUM Quantity."
            },
            "ChargeAlterationTBExpressionJXB":{
                "properties":{
                    "useTierComponent":{
                        "type":"boolean",
                        "title":"user tier component",
                        "description":"Indicates whether to only use the tier component."
                    },
                    "preRated":{
                        "type":"boolean",
                        "title":"pre rated",
                        "description":"Indicates whether the charge is prerated."
                    }
                },
                "type":"object",
                "title":"charge alteration tier bound expression",
                "description":"The tier bound expression for Charge."
            },
            "ResourcesConsumptionOrderJXB":{
                "enum":[
                    "EARLIEST_EXPIRY",
                    "RULE_ORDER"
                ],
                "type":"string",
                "description":"Specifies how the system consumes noncurrency resources for discounts. Choose <b>EARLIEST_EXPIRY </b> to consume the resource that expires first, or choose <b>RULE_ORDER </b> to consume balances according to the configured discount rules without considering validity."
            },
            "AlterationDateRangeRPEBranchJXB":{
                "description":"Describes the date range validity of the alteration rate plan.",
                "required":[
                    "startDate",
                    "endDate"
                ],
                "properties":{
                    "name":{
                        "type":"string"
                    },
                    "description":{
                        "type":"string"
                    },
                    "startDate":{
                        "type":"string",
                        "title":"start date",
                        "description":"Start date for a date range in a discount."
                    },
                    "endDate":{
                        "type":"string",
                        "title":"end date",
                        "description":"End date for a date range in a discount."
                    },
                    "arpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationDateRangeRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) The date range validity of the alteration rate plan. Possible values are <b>arpDateRange</b>, <b>alterationConfiguration</b>, <b>arpCompositePopModel</b>. This field is required."
                    },
                    "alterationConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) The alteration configuration and is associated with triggers and selectors for Charge, Quantity, or Balance. Configure triggers with <b>TriggerSpec</b>, and define conditions with charge selector specifications. Possible values are <b>arpDateRange</b>, <b>alterationConfiguration</b>, <b>arpCompositePopModel</b>. This field is required."
                    },
                    "arpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) This field defines the generic product offering price (POP) model as a rate plan element that directly composes an APopModel and supports one-time, recurring, or usage types. Possible values are <b>arpDateRange</b>, <b>alterationConfiguration</b>, <b>arpCompositePopModel</b>. This field is required."
                    }
                },
                "type":"object"
            },
            "AlterationRPEBranchJXB":{
                "description":"This field defines the alteration configuration and is associated with triggers and selectors for Charge, Quantity, or Balance. Configure triggers with <b>TriggerSpec</b>, and define conditions with a set of <b>charge selector specifications</b>.",
                "required":[
                    "applicableChargeAndQuantity"
                ],
                "properties":{
                    "name":{
                        "type":"string"
                    },
                    "description":{
                        "type":"string"
                    },
                    "applicableChargeAndQuantity":{
                        "$ref":"#/components/schemas/ApplicableChargeAndQuantityJXB",
                        "title":"applicable charge and quantity",
                        "description":"Determines how the discounts are applied to the charge when a charge is eligible for multiple discount offers. This option is not valid for discount offers that credit a balance."
                    },
                    "triggerSpecName":{
                        "type":"string",
                        "title":"trigger spec name",
                        "description":"This field specifies the name of the trigger specification (<b>TriggerSpec</b>). A TriggerSpec contains one or more Trigger Expressions that the system evaluates with an implicit AND, and these expressions can target Charge, Quantity, Balance, or Custom conditions. Possible values are any existing TriggerSpec name in your system (for example, <b>Trigger_OnPurchase</b>, <b>Trigger_HighUsage</b>). This field is required."
                    },
                    "chargeSelectorSpecName":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"charge selector spec name",
                        "description":"This field specifies one or more names of the charge selector specifications that the AlterationRatePlanElement uses to identify charges eligible for discounting. The specifications are reusable, and the are evaluated with an implicit OR. Possible values are any existing charge selector specification name in your system (for example, <b>ChargeSelector_OnNet</b>, <b>ChargeSelector_International</b>). This field is required."
                    },
                    "arpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationDateRangeRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) This field describes the date range validity of the alteration rate plan. Possible values are <b>arpDateRange</b>, <b>alterationConfiguration</b>, <b>arpCompositePopModel</b>. This field is required."
                    },
                    "alterationConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) This field defines the alteration configuration, including triggers and selectors for Charge, Quantity, or Balance. Configure triggers with <b>TriggerSpec</b>, and define conditions with a set of charge selector specifications. Possible values are <b>arpDateRange</b>, <b>alterationConfiguration</b>, <b>arpCompositePopModel</b>. This field is required."
                    },
                    "arpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) The generic product offering price (POP) model as a rate plan element that directly composes an APopModel and supports one-time, recurring, or usage types. Possible values are <b>arpDateRange</b>, <b>alterationConfiguration</b>, <b>arpCompositePopModel</b>. This field is required."
                    }
                },
                "type":"object"
            },
            "TODModeJXB":{
                "enum":[
                    "END_TIME",
                    "START_TIME",
                    "TIMED"
                ],
                "type":"string",
                "description":"The <b>Time Of the Day</b> Mode. Indicates if events should be rated using <b>startTime, endTime</b>, or split to use both."
            },
            "ApplicableQuantityTreatmentJXB":{
                "enum":[
                    "CONTINUOUS",
                    "ISOLATED"
                ],
                "type":"string",
                "description":"Indicates if the applicable quantity should be treated continuous or isolated."
            },
            "PermittedTypeJXB":{
                "enum":[
                    "CUSTOMER",
                    "PRODUCT"
                ],
                "type":"string",
                "description":"Specifies whether it is a product or a customer type."
            },
            "BillOffsetUnitJXB":{
                "enum":[
                    "DAYS",
                    "MONTHS"
                ],
                "type":"string",
                "description":"Specifies the offset unit (days or months) to bill in advance."
            },
            "ARatePlanElementJXB":{
                "properties":{
                    "name":{
                        "type":"string"
                    },
                    "description":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "ChargeRateSubscriberCurrencyRPEJXB":{
                "required":[
                    "currencyCode"
                ],
                "properties":{
                    "currencyCode":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"currency code",
                        "description":"The three letter ISO code for Currency"
                    },
                    "subscriberCurrency":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateSubscriberCurrencyRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) The subscription's currency details. It is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or </b>timeConfiguration</b>."
                    },
                    "applicableRum":{
                        "items":{
                            "$ref":"#/components/schemas/ApplicableRumRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) RUMs are ways in which you can measure events. The most common RUMs are Duration and Volume. Before you create product offerings, you must define the RUMs available for rating. You define RUMs when you create the service-event map. For each event, you specify the RUMs that can be used for rating it. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "genericSelector":{
                        "items":{
                            "$ref":"#/components/schemas/GenericSelectorRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of rules that map service and event attributes and expressions to a result. It is used in a charge to apply prices based on the rule results. It is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or </b>timeConfiguration</b>."
                    },
                    "crpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) Describes the date range validity of the charge rate plan. It is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or </b>timeConfiguration</b>."
                    },
                    "crpRelDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateRelDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The relative date range validity of the charge rate plan. It is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or </b>timeConfiguration</b>."
                    },
                    "crpAttributeAnalyzerModel":{
                        "items":{
                            "$ref":"#/components/schemas/CRAttributeAnalyzerRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A container object used for modeling expressions based on event, product and customer attributes. It is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or </b>timeConfiguration</b>."
                    },
                    "zoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/ZoneModelRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A are a set of time zones, such as <b>Pacific Time</b> or <b>Eastern Time</b>. It is used to charge different prices based on customer's time zone. It is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or </b>timeConfiguration</b>."
                    },
                    "enhancedZoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/EnhancedZoneRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) It is a special capability that enables the user to use zone models, USC selectors, and Access Point Name (APN) selectors when configuring a charge. It is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or </b>timeConfiguration</b>."
                    },
                    "crpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) It is a rateplan element that directly composes an APopModel. It can be <b>one-time, recurring</b>, or <b>usage type</b>. It is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or </b>timeConfiguration</b>."
                    },
                    "timeConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateTimeRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) Specifies the time model configuration. It is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or </b>timeConfiguration</b>."
                    }
                },
                "type":"object",
                "description":"(required) The currency details of the subscription. It is required and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel</b>, or <b>timeConfiguration</b>."
            },
            "ApplicableRumRPEBranchJXB":{
                "required":[
                    "applicableRumName"
                ],
                "properties":{
                    "applicableRumName":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"applicable rum name",
                        "description":"RUMs are ways in which you can measure events. The most common RUMs are <b>Duration</b> and <b>Volume</b>. Before you create product offerings, you must define the RUMs available for rating. You define RUMs when you create the <b>service-event</b> map. For each event, you specify the RUMs that can be used for rating it."
                    },
                    "minQuantity":{
                        "format":"double",
                        "type":"number",
                        "title":"min quantity",
                        "description":"The minimum value that the RUM quantity is rounded to. A value smaller than <b>min_quantity</b> is rounded to <b>min_quantity</b>."
                    },
                    "minQuantityUnit":{
                        "$ref":"#/components/schemas/RumQuantityUnitJXB",
                        "title":"min quantity unit",
                        "description":"The unit for the mininimum quantity."
                    },
                    "incrementQuantity":{
                        "format":"double",
                        "type":"number",
                        "title":"increment quantity",
                        "description":"The incremental value that the RUM quantity is rounded to. RUM quantity is always rounded to an integral multiple of the increment quantity."
                    },
                    "incrementQuantityUnit":{
                        "$ref":"#/components/schemas/RumQuantityUnitJXB",
                        "title":"increment quantity unit",
                        "description":"Specifies the increment quantity."
                    },
                    "roundingMode":{
                        "$ref":"#/components/schemas/RoundingModeJXB",
                        "title":"rounding mode",
                        "description":"Specifies how the RUM quantity is rounded."
                    },
                    "subscriberCurrency":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateSubscriberCurrencyRPEJXB"
                        },
                        "type":"array"
                    },
                    "applicableRum":{
                        "items":{
                            "$ref":"#/components/schemas/ApplicableRumRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) RUMs are ways in which you can measure events. It is required and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "genericSelector":{
                        "items":{
                            "$ref":"#/components/schemas/GenericSelectorRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of rules that map service and event attributes and expressions to a result. It is required and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The date range validity of the charge rate plan. It is required and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpRelDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateRelDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The relative date range validity of the charge rate plan. It is required and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpAttributeAnalyzerModel":{
                        "items":{
                            "$ref":"#/components/schemas/CRAttributeAnalyzerRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A container object used for modeling expressions based on event, product and customer attributes. It is required and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "zoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/ZoneModelRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of time zones, such as Pacific Time or Eastern Time. It is used to charge different prices based on customer's time zone. It is required and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "enhancedZoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/EnhancedZoneRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A special capability that enables the user to use zone models, USC selectors, and Access Point Name (APN) selectors when configuring a charge. It is required and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) A rateplan element that directly composes an APopModel. It can be one-time, recurring, or usage type. It is required and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "timeConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateTimeRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) The time model configuration. It is required and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    }
                },
                "type":"object",
                "title":"applicable rum rate plan branch",
                "description":"RUMs are ways in which you can measure events."
            },
            "GenericSelectorRPEJXB":{
                "required":[
                    "genericSelectorName",
                    "results"
                ],
                "properties":{
                    "genericSelectorName":{
                        "type":"string",
                        "title":"generic selector name",
                        "description":"The generic selector's name."
                    },
                    "results":{
                        "items":{
                            "$ref":"#/components/schemas/AttributeAnalyzerResultsJXB"
                        },
                        "type":"array",
                        "title":"attribute analyzer results",
                        "description":"The branch of the generic selectors. It contains the list of results based on the values of specified event attributes, service attributes, or custom rules."
                    }
                },
                "type":"object",
                "title":"generic selector rate plan element",
                "description":"A generic selector is a set of rules that map service and event attributes and expressions to a result. You use a generic selector in a charge to apply prices based on the rule results."
            },
            "ChargeRateDateRangeJXB":{
                "required":[
                    "absoluteDateRange"
                ],
                "properties":{
                    "absoluteDateRange":{
                        "$ref":"#/components/schemas/CRAbsoluteDateRangeJXB",
                        "title":"charge rate date range",
                        "description":"A container for defining the effective date range for a fixed period."
                    },
                    "subscriberCurrency":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateSubscriberCurrencyRPEJXB"
                        },
                        "type":"array"
                    },
                    "applicableRum":{
                        "items":{
                            "$ref":"#/components/schemas/ApplicableRumRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) RUMs are ways in which you can measure events. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "genericSelector":{
                        "items":{
                            "$ref":"#/components/schemas/GenericSelectorRPEJXB",
                            "description":"(required) A set of rules that map service and event attributes and expressions to a result. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                        },
                        "type":"array"
                    },
                    "crpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateDateRangeJXB",
                            "desscription":"(required) The date range validity of the charge rate plan. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                        },
                        "type":"array"
                    },
                    "crpRelDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateRelDateRangeJXB",
                            "description":"(required) The relative date range validity of the charge rate plan. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                        },
                        "type":"array"
                    },
                    "crpAttributeAnalyzerModel":{
                        "items":{
                            "$ref":"#/components/schemas/CRAttributeAnalyzerRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A container object used for modeling expressions based on event, product and customer attributes. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "zoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/ZoneModelRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of time zones, such as Pacific Time or Eastern Time. It is used to charge different prices based on customer's time zone. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "enhancedZoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/EnhancedZoneRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A special capability that enables user to use zone models, USC selectors, and Access Point Name (APN) selectors when configuring a charge. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration.."
                    },
                    "crpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) A rateplan element that directly composes an APopModel. It can be one-time, recurring, or usage type. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "timeConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateTimeRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) The time model configuration. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    }
                },
                "type":"object",
                "title":"charge rate date range",
                "description":"Describes the date range validity of the charge rate plan."
            },
            "ChargeRateRelDateRangeJXB":{
                "properties":{
                    "absoluteDateRange":{
                        "$ref":"#/components/schemas/CRAbsoluteDateRangeJXB",
                        "description":"(required) Container for defining the effective date range for a fixed period. It is required and has to be either <b>absoluteDateRange</b> or <b>relativeDateRange</b>."
                    },
                    "relativeDateRange":{
                        "$ref":"#/components/schemas/RelativeDateRangeJXB",
                        "description":"(required) A container that definines a relative date range for a product purchase. It is required and has to be either <b>absoluteDateRange</b> or <b>relativeDateRange</b>."
                    },
                    "subscriberCurrency":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateSubscriberCurrencyRPEJXB"
                        },
                        "type":"array"
                    },
                    "applicableRum":{
                        "items":{
                            "$ref":"#/components/schemas/ApplicableRumRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) RUMs are ways in which you can measure events. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "genericSelector":{
                        "items":{
                            "$ref":"#/components/schemas/GenericSelectorRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of rules that map service and event attributes and expressions to a result. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The date range validity of the charge rate plan. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpRelDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateRelDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The relative date range validity of the charge rate plan. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpAttributeAnalyzerModel":{
                        "items":{
                            "$ref":"#/components/schemas/CRAttributeAnalyzerRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A container object used for modeling expressions based on event, product and customer attributes. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "zoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/ZoneModelRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of time zones, such as Pacific Time or Eastern Time. It is used to charge different prices based on customer's time zone. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "enhancedZoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/EnhancedZoneRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A special capability that enables user to use zone models, USC selectors, and Access Point Name (APN) selectors when configuring a charge. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) A rateplan element that directly composes an APopModel. It can be <b>one-time, recurring</b>, or <b>usage type</b>. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "timeConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateTimeRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) The time model configuration. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    }
                },
                "type":"object",
                "title":"charge rate release date range",
                "description":"Describes the relative date range validity of the charge rate plan."
            },
            "CRAttributeAnalyzerRPEJXB":{
                "required":[
                    "attributeAnalyzerModelName"
                ],
                "properties":{
                    "stereoType":{
                        "$ref":"#/components/schemas/AAStereoTypeJXB",
                        "title":"stereo type",
                        "description":"Specifies the selector type."
                    },
                    "attributeAnalyzerModelName":{
                        "type":"string",
                        "title":"attribute analyzer model name",
                        "description":"The attribute analyzer model's name."
                    }
                },
                "type":"object",
                "title":"charge rate attribute analyzer rate plan element",
                "description":"A container object used for modeling expressions based on event, product and customer attributes."
            },
            "ZoneModelRPEJXB":{
                "required":[
                    "zoneModelName",
                    "results"
                ],
                "properties":{
                    "zoneModelName":{
                        "type":"string",
                        "title":"zone model name",
                        "description":"The zone model's name."
                    },
                    "results":{
                        "items":{
                            "$ref":"#/components/schemas/ZoneResultsJXB"
                        },
                        "type":"array",
                        "title":"zone results",
                        "description":"Describes the impact category for zones."
                    }
                },
                "type":"object",
                "title":"zone model RPE",
                "description":"Zone model rate plan element. Zone models are a set of time zones, such as <b>Pacific Time</b> or <b>Eastern Time</b>. It is used to charge different prices based on customer's time zone."
            },
            "EnhancedZoneRPEJXB":{
                "required":[
                    "zoneModelName",
                    "results"
                ],
                "properties":{
                    "zoneModelName":{
                        "type":"string",
                        "title":"zone model name",
                        "description":"The zone model's name."
                    },
                    "uscModelName":{
                        "type":"string",
                        "title":"usc model name",
                        "description":"The usc model's name."
                    },
                    "apnModelName":{
                        "type":"string",
                        "title":"apn model name",
                        "description":"The apn model's name."
                    },
                    "results":{
                        "items":{
                            "$ref":"#/components/schemas/ZoneResultsJXB"
                        },
                        "type":"array",
                        "title":"zone results",
                        "description":"Dscribes the impact category for zones."
                    }
                },
                "type":"object",
                "title":"enhanced zone RPE",
                "description":"A special capability that enables user to use zone models, USC selectors, and Access Point Name (APN) selectors when configuring a charge."
            },
            "ChargeRateTimeRPEJXB":{
                "required":[
                    "timeModelName",
                    "tags"
                ],
                "properties":{
                    "timeModelName":{
                        "type":"string",
                        "title":"time model name",
                        "description":"The time model's name."
                    },
                    "tags":{
                        "items":{
                            "$ref":"#/components/schemas/TimeTagsJXB"
                        },
                        "type":"array",
                        "title":"time tags",
                        "description":"Specifies the time tags."
                    }
                },
                "type":"object",
                "title":"charge rate time rate plan element",
                "description":"Specifies the time model configuration."
            },
            "TimeTagsJXB":{
                "required":[
                    "name"
                ],
                "properties":{
                    "name":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"time tag name",
                        "description":"The time tag's name."
                    },
                    "subscriberCurrency":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateSubscriberCurrencyRPEJXB"
                        },
                        "type":"array"
                    },
                    "applicableRum":{
                        "items":{
                            "$ref":"#/components/schemas/ApplicableRumRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) RUMs are ways in which you can measure events. The most common RUMs are <b>Duration</b> and <b>Volume</b>. Before you create product offerings, you must define the RUMs available for rating. You define RUMs when you create the <b>service-event</b> map. For each event, you specify the RUMs that can be used for rating it. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "genericSelector":{
                        "items":{
                            "$ref":"#/components/schemas/GenericSelectorRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of rules that map service and event attributes and expressions to a result. You use a generic selector in a charge to apply prices based on the rule results. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The date range validity of the charge rate plan. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpRelDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateRelDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The relative date range validity of the charge rate plan. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpAttributeAnalyzerModel":{
                        "items":{
                            "$ref":"#/components/schemas/CRAttributeAnalyzerRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A container object used for modeling expressions based on event, product and customer attributes. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "zoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/ZoneModelRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of time zones, such as <b>Pacific Time</b> or <b>Eastern Time</b>. It is used to charge different prices based on customer's time zone. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "enhancedZoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/EnhancedZoneRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A special capability that enables user to use zone models, USC selectors, and Access Point Name (APN) selectors when configuring a charge. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) It is a generic product offering price model. It can be <b>one-time, recurring</b>, or <b>usage type</b>. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "timeConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateTimeRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) The time model configuration. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    }
                },
                "type":"object",
                "title":"time tags",
                "description":"Specifies the time tags."
            },
            "ZoneResultsJXB":{
                "required":[
                    "name"
                ],
                "properties":{
                    "name":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"zone results name",
                        "description":"Name of the zone results."
                    },
                    "subscriberCurrency":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateSubscriberCurrencyRPEJXB"
                        },
                        "type":"array"
                    },
                    "applicableRum":{
                        "items":{
                            "$ref":"#/components/schemas/ApplicableRumRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) RUMs are ways in which you can measure events. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "genericSelector":{
                        "items":{
                            "$ref":"#/components/schemas/GenericSelectorRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of rules that map service and event attributes and expressions to a result. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The date range validity of the charge rate plan. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpRelDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateRelDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The relative date range validity of the charge rate plan. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpAttributeAnalyzerModel":{
                        "items":{
                            "$ref":"#/components/schemas/CRAttributeAnalyzerRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A container object used for modeling expressions based on event, product and customer attributes. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "zoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/ZoneModelRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of time zones, such as <b>Pacific Time</b> or <b>Eastern Time</b>. It is used to charge different prices based on customer's time zone. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "enhancedZoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/EnhancedZoneRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A special capability that enables user to use zone models, USC selectors, and Access Point Name (APN) selectors when configuring a charge. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) It is generic product offering price model. A rateplan element that directly composes an APopModel. It can be one-time, recurring</b>, or <b>usage type</b>. It is a required field and has to be one of <b>subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "timeConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateTimeRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) The time model configuration. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    }
                },
                "type":"object",
                "title":"zone results",
                "description":"Describes the impact category for zones. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
            },
            "AttributeAnalyzerResultsJXB":{
                "required":[
                    "name"
                ],
                "properties":{
                    "name":{
                        "items":{
                            "type":"string"
                        },
                        "type":"array",
                        "title":"name",
                        "description":"The attribute analyzer result's name."
                    },
                    "subscriberCurrency":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateSubscriberCurrencyRPEJXB"
                        },
                        "type":"array"
                    },
                    "applicableRum":{
                        "items":{
                            "$ref":"#/components/schemas/ApplicableRumRPEBranchJXB"
                        },
                        "type":"array",
                        "description":"(required) RUMs are ways in which you can measure events. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "genericSelector":{
                        "items":{
                            "$ref":"#/components/schemas/GenericSelectorRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of rules that map service and event attributes and expressions to a result. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The date range validity of the charge rate plan. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpRelDateRange":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateRelDateRangeJXB"
                        },
                        "type":"array",
                        "description":"(required) The relative date range validity of the charge rate plan. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpAttributeAnalyzerModel":{
                        "items":{
                            "$ref":"#/components/schemas/CRAttributeAnalyzerRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A container object used for modeling expressions based on event, product and customer attributes. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "zoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/ZoneModelRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A set of time zones, such as <b>Pacific Time</b> or <b>Eastern Time</b>. It is used to charge different prices based on customer's time zone. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "enhancedZoneModel":{
                        "items":{
                            "$ref":"#/components/schemas/EnhancedZoneRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) A special capability that enables user to use zone models, USC selectors, and Access Point Name (APN) selectors when configuring a charge. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "crpCompositePopModel":{
                        "$ref":"#/components/schemas/CompositePopModelRPEJXB",
                        "description":"(required) A rateplan element that directly composes an APopModel. It can be one-time, recurring, or usage type. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    },
                    "timeConfiguration":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRateTimeRPEJXB"
                        },
                        "type":"array",
                        "description":"(required) The time model configuration. It is a required field and has to be one of subscriberCurrency, applicableRum, genericSelector, crpDateRange, crpRelDateRange, crpAttributeAnalyzerModel, zoneModel, enhancedZoneModel, crpCompositePopModel, or timeConfiguration."
                    }
                },
                "type":"object",
                "title":"attribute analyzer results",
                "description":"Branch of the Generic Selectors. Contains the list of result based on the values of specified event attributes, service attributes, or custom rules."
            },
            "CRAbsoluteDateRangeJXB":{
                "required":[
                    "startDate",
                    "endDate"
                ],
                "properties":{
                    "startDate":{
                        "type":"string",
                        "title":"start date",
                        "description":"The fixed period's start date."
                    },
                    "endDate":{
                        "type":"string",
                        "title":"end date",
                        "description":"The fixed period's end date."
                    }
                },
                "type":"object",
                "title":"CR absolute date range",
                "description":"A container that defines the effective date range for a fixed period."
            },
            "RelativeDateRangeJXB":{
                "required":[
                    "startOffset",
                    "startUnit",
                    "endOffset",
                    "endUnit",
                    "base"
                ],
                "properties":{
                    "startOffset":{
                        "type":"integer",
                        "title":"start offset",
                        "description":"Number of days, hours, minutes, or seconds after the purchase time that the charge takes effect."
                    },
                    "startUnit":{
                        "$ref":"#/components/schemas/UnitTypeJXB",
                        "title":"start unit",
                        "description":"Days, hours, minutes, or seconds after the purchase time that the charge takes effect."
                    },
                    "endOffset":{
                        "type":"integer",
                        "title":"end offset",
                        "description":"Number of days, hours, minutes, or seconds after the start time that the charge is no longer effective."
                    },
                    "endUnit":{
                        "$ref":"#/components/schemas/UnitTypeJXB",
                        "title":"end unit",
                        "description":"Days, hours, minutes, or seconds after the start time that the charge is no longer effective."
                    },
                    "base":{
                        "$ref":"#/components/schemas/BaseTypeJXB",
                        "title":"base",
                        "description":"Indicates the base type. The valid value is <b>PRODUCT_PURCHASE</b>."
                    }
                },
                "type":"object",
                "title":"relative date range",
                "description":"A container that defines a relative date range for a product purchase."
            },
            "RumQuantityUnitJXB":{
                "enum":[
                    "BYTE",
                    "DAY",
                    "GIGABYTE",
                    "HOUR",
                    "KILOBYTE",
                    "MEGABYTE",
                    "MINUTE",
                    "MONTH",
                    "NONE",
                    "SECOND"
                ],
                "type":"string",
                "description":"Measures the RUM quantity."
            },
            "UnitTypeJXB":{
                "enum":[
                    "DAYS",
                    "HOURS",
                    "MINUTES",
                    "SECONDS"
                ],
                "type":"string",
                "description":"Measure the time."
            },
            "BaseTypeJXB":{
                "enum":[
                    "PRODUCT_PURCHASE"
                ],
                "type":"string",
                "description":"Indicates the base type."
            },
            "ChargeSelectorEventConditionJXB":{
                "properties":{
                    "eventField":{
                        "type":"string"
                    },
                    "eventValue":{
                        "type":"string"
                    }
                },
                "type":"object"
            },
            "ATriggerExpressionJXB":{
                "properties":{
                    "operator":{
                        "$ref":"#/components/schemas/TriggerOperatorJXB"
                    },
                    "value":{
                        "format":"double",
                        "type":"number"
                    }
                },
                "type":"object"
            },
            "TriggerOperatorJXB":{
                "enum":[
                    "EQUAL_TO",
                    "GREATER_THAN",
                    "GREATER_THAN_EQ",
                    "LESS_THAN",
                    "LESS_THAN_EQ",
                    "NOT_EQUAL_TO"
                ],
                "type":"string"
            },
            "TimeModelValidityPeriodJXB":{
                "properties":{
                    "validFrom":{
                        "type":"string"
                    },
                    "timeModelTag":{
                        "items":{
                            "$ref":"#/components/schemas/TimeModelTagJXB"
                        },
                        "type":"array"
                    }
                },
                "type":"object"
            },
            "TimeModelTagJXB":{
                "properties":{
                    "tagName":{
                        "type":"string"
                    },
                    "timeSpecification":{
                        "items":{
                            "$ref":"#/components/schemas/TimeSpecJXB"
                        },
                        "type":"array"
                    }
                },
                "type":"object"
            },
            "TimeSpecJXB":{
                "properties":{
                    "name":{
                        "type":"string"
                    },
                    "description":{
                        "type":"string"
                    },
                    "timeOfDay":{
                        "type":"string"
                    },
                    "daysOfWeek":{
                        "$ref":"#/components/schemas/DaysOfWeekJXB"
                    },
                    "monthsOfYear":{
                        "$ref":"#/components/schemas/MonthsOfYearJXB"
                    },
                    "daysOfMonth":{
                        "type":"string"
                    },
                    "holiday":{
                        "type":"boolean"
                    }
                },
                "type":"object"
            },
            "DaysOfWeekJXB":{
                "properties":{
                    "day":{
                        "items":{
                            "$ref":"#/components/schemas/DayOfWeekEnumJXB"
                        },
                        "type":"array"
                    }
                },
                "type":"object"
            },
            "MonthsOfYearJXB":{
                "properties":{
                    "month":{
                        "items":{
                            "$ref":"#/components/schemas/MonthOfYearEnumJXB"
                        },
                        "type":"array"
                    }
                },
                "type":"object"
            },
            "MonthOfYearEnumJXB":{
                "enum":[
                    "APR",
                    "AUG",
                    "DEC",
                    "FEB",
                    "JAN",
                    "JUL",
                    "JUN",
                    "MAR",
                    "MAY",
                    "NOV",
                    "OCT",
                    "SEP"
                ],
                "type":"string"
            },
            "DayOfWeekEnumJXB":{
                "enum":[
                    "FRIDAY",
                    "MONDAY",
                    "SATURDAY",
                    "SUNDAY",
                    "THURSDAY",
                    "TUESDAY",
                    "WEDNESDAY"
                ],
                "type":"string"
            },
            "PricingObjectsJXB":{
                "properties":{
                    "priceModel":{
                        "items":{
                            "$ref":"#/components/schemas/PriceModelJXB"
                        },
                        "type":"array",
                        "description":"The price model."
                    },
                    "timeModel":{
                        "items":{
                            "$ref":"#/components/schemas/TimeModelJXB"
                        },
                        "type":"array",
                        "description":"The time model."
                    },
                    "priceModelSelector":{
                        "items":{
                            "$ref":"#/components/schemas/AttributeAnalyzerModelJXB"
                        },
                        "type":"array",
                        "description":"The price model selector."
                    },
                    "apnSelector":{
                        "items":{
                            "$ref":"#/components/schemas/AttributeAnalyzerModelJXB"
                        },
                        "type":"array",
                        "description":"The APN selector."
                    },
                    "uscSelector":{
                        "items":{
                            "$ref":"#/components/schemas/AttributeAnalyzerModelJXB"
                        },
                        "type":"array",
                        "description":"The USC selector."
                    },
                    "taxSelector":{
                        "items":{
                            "$ref":"#/components/schemas/AttributeAnalyzerModelJXB"
                        },
                        "type":"array",
                        "description":"The tax selector."
                    },
                    "taxExemptionSelector":{
                        "items":{
                            "$ref":"#/components/schemas/AttributeAnalyzerModelJXB"
                        },
                        "type":"array",
                        "description":"The tax exemption selector."
                    },
                    "genericSelector":{
                        "items":{
                            "$ref":"#/components/schemas/AttributeAnalyzerModelJXB"
                        },
                        "type":"array",
                        "description":"The generic selector."
                    },
                    "triggerSpec":{
                        "items":{
                            "$ref":"#/components/schemas/TriggerSpecJXB"
                        },
                        "type":"array",
                        "description":"Refers to the trigger specification."
                    },
                    "chargeSelectorSpec":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeSelectorSpecJXB"
                        },
                        "type":"array",
                        "description":"Refers to the charge selector specification."
                    },
                    "chargeRatePlan":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeRatePlanJXB"
                        },
                        "type":"array",
                        "description":"The charge rate plan pricing object."
                    },
                    "alterationRatePlan":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationRatePlanJXB"
                        },
                        "type":"array",
                        "description":"The alteration rate plan pricing object."
                    },
                    "distributionRatePlan":{
                        "items":{
                            "$ref":"#/components/schemas/DistributionRatePlanJXB"
                        },
                        "type":"array",
                        "description":"The distribution rate plan pricing object."
                    },
                    "rolloverRatePlan":{
                        "items":{
                            "$ref":"#/components/schemas/RolloverRatePlanJXB"
                        },
                        "type":"array",
                        "description":"The rollover rate plan pricing object."
                    },
                    "chargeRateplanSelector":{
                        "items":{
                            "$ref":"#/components/schemas/AttributeAnalyzerModelJXB"
                        },
                        "type":"array",
                        "description":"The charge rate plan selector."
                    },
                    "alterationRateplanSelector":{
                        "items":{
                            "$ref":"#/components/schemas/AttributeAnalyzerModelJXB"
                        },
                        "type":"array",
                        "description":"The alteration rate plan selector."
                    },
                    "chargeOffering":{
                        "items":{
                            "$ref":"#/components/schemas/ChargeOfferingJXB"
                        },
                        "type":"array",
                        "description":"The charge offer pricing object."
                    },
                    "alterationOffering":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationOfferingJXB"
                        },
                        "type":"array",
                        "description":"The Alteration/Discount offer pricing object."
                    },
                    "distributionOffering":{
                        "items":{
                            "$ref":"#/components/schemas/DistributionOfferingJXB"
                        },
                        "type":"array",
                        "description":"The distribution offer pricing object."
                    },
                    "subscriptionTerms":{
                        "items":{
                            "$ref":"#/components/schemas/SubscriptionTermsJXB"
                        },
                        "type":"array",
                        "description":"The terms of subscription."
                    },
                    "bundledProductOffering":{
                        "items":{
                            "$ref":"#/components/schemas/BundledProductOfferingJXB"
                        },
                        "type":"array",
                        "description":"Bundles group together charge offers and discount offers belonging to the same service."
                    },
                    "package":{
                        "items":{
                            "$ref":"#/components/schemas/PackageJXB"
                        },
                        "type":"array",
                        "description":"A package consists of one or more bundles that is made available to customers for purchase."
                    },
                    "alterationOfferingExclusion":{
                        "items":{
                            "$ref":"#/components/schemas/AlterationOfferingExclusionJXB"
                        },
                        "type":"array",
                        "description":"Discount offer exclusions to prevent a discount offer from being used or purchased when another discount offer or package is owned."
                    },
                    "packageExclusion":{
                        "items":{
                            "$ref":"#/components/schemas/PackageExclusionJXB"
                        },
                        "type":"array",
                        "description":"Specify the discount offers that cannot be used with the package."
                    },
                    "packageTransition":{
                        "items":{
                            "$ref":"#/components/schemas/PackageTransitionJXB"
                        },
                        "type":"array",
                        "description":"A package consists of one or more bundles that is made available to customers for purchase. Transition rules are used to upgrade or downgrade a package to another package."
                    },
                    "bundledProductOfferingTransition":{
                        "items":{
                            "$ref":"#/components/schemas/BundledProductOfferingTransitionJXB"
                        },
                        "type":"array",
                        "description":"Defines rules for transitioning from one bundle to another."
                    },
                    "bundledProductOfferingDependency":{
                        "items":{
                            "$ref":"#/components/schemas/BundledProductOfferingDependencyJXB"
                        },
                        "type":"array",
                        "description":"Defines dependent relationships between bundles."
                    },
                    "bestPricing":{
                        "items":{
                            "$ref":"#/components/schemas/BestPricingJXB"
                        },
                        "type":"array",
                        "description":"The best pricing."
                    },
                    "packageList":{
                        "items":{
                            "$ref":"#/components/schemas/PackageListJXB"
                        },
                        "type":"array",
                        "description":"A package list is used to group related packages that can be made available to customer."
                    },
                    "subscriptionTermsAutoRenew":{
                        "items":{
                            "$ref":"#/components/schemas/SubscriptionTermsAutoRenewJXB"
                        },
                        "type":"array",
                        "description":"The terms to automatically renew subscriptions."
                    }
                },
                "type":"object"
            }
        }
    }
}