{
  "openapi": "3.0.1",
  "info": {
    "title": "cpopofferms Service",
    "description": "cpopofferms is a sandbox MS internal to commerce services team.",
    "version": "3.0.1"
  },
  "servers": [
    {
      "url": "/msapi"
    }
  ],
  "tags": [],
  "paths": {
    "/cpopoffer/v1/product-offers": {
      "get": {
        "tags": [
          "ProductOffers"
        ],
        "summary": "Get Method for retrieving productOffering details based on eligiblity and/or filter",
        "description": "productoffering details will be returned for the provided eligibility and/or filter",
        "operationId": "getProductOfferings",
        "parameters": [
          {
            "name": "X-ATT-ClientId",
            "in": "header",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "idpctx-appname",
            "in": "header",
            "schema": {
              "type": "string",
              "default": "onlinesales"
            }
          },
          {
            "name": "ids",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "channel",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subChannel",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subChannelGroup",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "categoryName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "serviceAddressId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productOfferingTypeGroup",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "characteristics",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "migratedFrom",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "relatedProductOfferingId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "relationType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "relationRole",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerSubType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "checkEligibilityForCoupon",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextMainIdentifier",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ACPClassification",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "cartSuperPhoneLineCount",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "idpctx-linkeduverseaccnums",
            "in": "header",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "losgTypes",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "callCenterType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "billingState",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "paymentType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offerTypes",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "deviceProductIds",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "allVariants",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "lobs",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "productType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "atgSkuIds",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupByVariantGroup",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "imeiTypes",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "skus",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "deviceSkuId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "planSkuIds",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expandData",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ctn",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "categoryType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "deviceCount",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "planFirstFlow",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "creditRisk",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "referralCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "installationType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "activeProducts",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "transportTypes",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productOfferingOnly",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "initiatorBan",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "deviceProductOfferingIds",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "deviceAllocationFlow",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "transferCtns",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "acceptorCtn",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "acceptorBan",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "initiatorCustomerType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "market",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "targetedPlancode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "prefetch",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "skuWithPrefixRentedEquipment",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "skuWithPrefixEquipment",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productOfferingId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "cartId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productOrderItemId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "bundleProductsIntent",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "uverseBan",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "zipCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "actionType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rootBundleProductOrderItemId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productOfferingType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productOfferingGroup",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accessEligible",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "dealerCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "fanId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "planGroupId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupChangeInFocus",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerIntend",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contractType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contractVersion",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "dataGroupInd",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "mobileOfferType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "deviceCounters",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "checkQualification",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "selectedUpgradeOption",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tradeInModel",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tradeInValue",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "hylaModelCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "intent",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountSubType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "enterpriseType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "speed",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "qualificationType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "marketplaceEligible",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "enforcePlanCheck",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "planType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "kitType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "state",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "stateCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tenderType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "serviceFlow",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK.. Returns success response",
            "headers": {
              "idpctx-OC-X-Dox-trace": {
                "description": "traceID from OrderCapture api call",
                "required": true,
                "style": "simple",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductOffering"
                },
                "examples": {
                  "AIA Extender Recommender Tool Response": {
                    "value": [
                      {
                        "id": "63fd411b-9ba8-484b-bba5-52797f4c26a1",
                        "name": "Extended Wi-Fi Coverage Service",
                        "localizedName": "Extended Wi-Fi Coverage Service",
                        "description": "Extended Wi-Fi Coverage Service",
                        "href": "/msapi/productoffer/discovery/v1/product-offers/63fd411b-9ba8-484b-bba5-52797f4c26a1?channel=SelfService",
                        "productOfferingType": "Coverage",
                        "productOfferingTypeGroup": "addon",
                        "mustBeBundled": false,
                        "isBundle": true,
                        "productOfferingCharacteristic": [
                          {
                            "name": "Benefits",
                            "localizedName": "Benefits",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "<ul> <li>Reduce signal weak spots and dead zones</li> <li>Increase your Wi-Fi coverage by up to 1,000 sq ft.</li> <li>Lifetime extender replacement while your service is active*</li> </ul>  <p>&nbsp;</p> <p>* Account must be active and in good standing; replacement at discretion of AT&amp;T.</p> <p>California Proposition 65 warning</p> <p>WARNING: Cancer and reproductive harm; go to <a href=https://www.p65warnings.ca.gov/>https://www.p65warnings.ca.gov\\</a></p>",
                                "localizedValue": "<ul> <li>Reduce signal weak spots and dead zones</li> <li>Increase your Wi-Fi coverage by up to 1,000 sq ft.</li> <li>Lifetime extender replacement while your service is active*</li> </ul>  <p>&nbsp;</p> <p>* Account must be active and in good standing; replacement at discretion of AT&amp;T.</p> <p>California Proposition 65 warning</p> <p>WARNING: Cancer and reproductive harm; go to <a href=https://www.p65warnings.ca.gov/>https://www.p65warnings.ca.gov\\</a></p>",
                                "default": false
                              }
                            ]
                          },
                          {
                            "name": "Service_Description",
                            "localizedName": "Service Description",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "<p>Next-generation Wi-Fi experience, delivers more coverage to more corners of your home</p>",
                                "localizedValue": "<p>Next-generation Wi-Fi experience, delivers more coverage to more corners of your home</p>",
                                "default": false
                              }
                            ]
                          },
                          {
                            "name": "buyersRemorseDuration",
                            "localizedName": "Buyer's Remorse Duration",
                            "valueType": "Integer",
                            "value": [
                              {
                                "value": "31",
                                "localizedValue": "31",
                                "default": false
                              }
                            ]
                          },
                          {
                            "name": "Offer_Code",
                            "localizedName": "Offer Code",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "EWCS",
                                "localizedValue": "EWCS",
                                "default": false
                              }
                            ],
                            "characteristicsMetadata": [
                              {
                                "name": "CharacteristicValueDisplayFields",
                                "value": "value"
                              }
                            ]
                          },
                          {
                            "name": "Payment_Type",
                            "localizedName": "Payment Option",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "Pay_on_Bill",
                                "localizedValue": "Pay on Bill",
                                "default": false
                              }
                            ],
                            "characteristicsMetadata": [
                              {
                                "name": "AppearOnSummary",
                                "value": "true"
                              },
                              {
                                "name": "AppearOnPreview",
                                "value": "true"
                              },
                              {
                                "name": "Visualization",
                                "value": "DropDown"
                              },
                              {
                                "name": "LocalizedName",
                                "value": "Payment Option"
                              },
                              {
                                "name": "Presentable",
                                "value": "true"
                              },
                              {
                                "name": "Actionable",
                                "value": "null"
                              },
                              {
                                "name": "Editable",
                                "value": "true"
                              }
                            ]
                          },
                          {
                            "name": "Payment_Method",
                            "localizedName": "Payment Method",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "Credit",
                                "localizedValue": "Credit",
                                "default": false
                              }
                            ],
                            "characteristicsMetadata": [
                              {
                                "name": "AppearOnSummary",
                                "value": "true"
                              },
                              {
                                "name": "AppearOnPreview",
                                "value": "true"
                              },
                              {
                                "name": "Visualization",
                                "value": "DropDown"
                              },
                              {
                                "name": "LocalizedName",
                                "value": "Payment Method"
                              },
                              {
                                "name": "Presentable",
                                "value": "true"
                              },
                              {
                                "name": "Actionable",
                                "value": "null"
                              },
                              {
                                "name": "Editable",
                                "value": "true"
                              }
                            ]
                          },
                          {
                            "name": "firstRCPaymentOption",
                            "localizedName": "First RC Payment Option",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "Immediate",
                                "localizedValue": "Immediate",
                                "default": false
                              },
                              {
                                "value": "payOnBill",
                                "localizedValue": "Pay on Bill",
                                "default": false
                              }
                            ],
                            "characteristicsMetadata": [
                              {
                                "name": "AppearOnSummary",
                                "value": "true"
                              },
                              {
                                "name": "AppearOnPreview",
                                "value": "true"
                              },
                              {
                                "name": "Visualization",
                                "value": "DropDown"
                              },
                              {
                                "name": "LocalizedName",
                                "value": "First RC Payment Option"
                              },
                              {
                                "name": "Presentable",
                                "value": "true"
                              },
                              {
                                "name": "Actionable",
                                "value": "null"
                              },
                              {
                                "name": "Editable",
                                "value": "true"
                              },
                              {
                                "name": "alignmentType",
                                "value": "align"
                              },
                              {
                                "name": "alignOC",
                                "value": "false"
                              },
                              {
                                "name": "alignRC",
                                "value": "true"
                              },
                              {
                                "name": "alignUC",
                                "value": "false"
                              }
                            ]
                          },
                          {
                            "name": "paymentTiming",
                            "localizedName": "Payment Timing",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "InAdvance",
                                "localizedValue": "In Advance",
                                "default": false
                              }
                            ],
                            "characteristicsMetadata": [
                              {
                                "name": "AppearOnSummary",
                                "value": "true"
                              },
                              {
                                "name": "AppearOnPreview",
                                "value": "true"
                              },
                              {
                                "name": "Visualization",
                                "value": "DropDown"
                              },
                              {
                                "name": "LocalizedName",
                                "value": "Payment Timing"
                              },
                              {
                                "name": "Presentable",
                                "value": "true"
                              },
                              {
                                "name": "Actionable",
                                "value": "null"
                              },
                              {
                                "name": "Editable",
                                "value": "true"
                              },
                              {
                                "name": "alignmentType",
                                "value": "propagate"
                              },
                              {
                                "name": "alignOC",
                                "value": "false"
                              },
                              {
                                "name": "price",
                                "value": "MASKED"
                              },
                              {
                                "name": "alignRC",
                                "value": "true"
                              },
                              {
                                "name": "alignUC",
                                "value": "false"
                              }
                            ]
                          },
                          {
                            "name": "prorationPolicy",
                            "localizedName": "Proration Policy",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "defaultProrationStrategy",
                                "localizedValue": "Default Proration Strategy",
                                "default": false
                              }
                            ],
                            "characteristicsMetadata": [
                              {
                                "name": "alignmentType",
                                "value": "propagate"
                              },
                              {
                                "name": "alignOC",
                                "value": "false"
                              },
                              {
                                "name": "price",
                                "value": "MASKED"
                              },
                              {
                                "name": "alignRC",
                                "value": "true"
                              },
                              {
                                "name": "alignUC",
                                "value": "false"
                              }
                            ]
                          },
                          {
                            "name": "billingProfile",
                            "localizedName": "Billing Profile",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "hassleFree",
                                "localizedValue": "Hassle Free Profile",
                                "default": false
                              }
                            ]
                          },
                          {
                            "name": "commissionable",
                            "localizedName": "commissionable",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "0",
                                "localizedValue": "No",
                                "default": true
                              },
                              {
                                "value": "1",
                                "localizedValue": "Yes",
                                "default": false
                              }
                            ]
                          },
                          {
                            "name": "chargebackEligible",
                            "localizedName": "chargebackEligible",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "0",
                                "localizedValue": "No",
                                "default": true
                              },
                              {
                                "value": "1",
                                "localizedValue": "Yes",
                                "default": false
                              }
                            ]
                          },
                          {
                            "name": "productType",
                            "localizedName": "Product Type",
                            "valueType": "String",
                            "value": [
                              {
                                "value": "WBB",
                                "localizedValue": "WBB",
                                "default": true
                              }
                            ],
                            "characteristicsMetadata": [
                              {
                                "name": "systemName"
                              },
                              {
                                "name": "externalName"
                              },
                              {
                                "name": "exposed"
                              }
                            ]
                          },
                          {
                            "name": "extenderRecommended",
                            "localizedName": "extenderRecommended",
                            "valueType": "Integer",
                            "value": [
                              {
                                "value": "3",
                                "localizedValue": "3",
                                "default": false
                              }
                            ]
                          }
                        ],
                        "productOfferingRelationship": [
                          {
                            "id": "94fe0227-ab56-45c2-b124-5fd49d570142",
                            "name": "WBB_AddOn_Relation",
                            "relationshipType": "commercialRelation",
                            "role": "addOn"
                          }
                        ],
                        "validFor": {
                          "startDateTime": "2021-11-02T07:00:00Z"
                        },
                        "productOfferingTotalPrice": [
                          {
                            "priceType": "RC",
                            "recurringChargePeriod": "month",
                            "recurringChargePeriodLength": 1,
                            "price": {
                              "dutyFreeAmount": {
                                "unit": "USD",
                                "value": 12
                              }
                            },
                            "finalPrice": {
                              "dutyFreeAmount": {
                                "unit": "USD",
                                "value": 12
                              }
                            },
                            "standalonePrice": {
                              "dutyFreeAmount": {
                                "unit": "USD",
                                "value": 12
                              }
                            },
                            "taxIncluded": "Excluded"
                          }
                        ],
                        "productOfferingPrice": [
                          {
                            "name": "Extended Wi-Fi Coverage Service",
                            "priceCategory": "serviceRC",
                            "priceType": "RC",
                            "recurringChargePeriod": "month",
                            "recurringChargePeriodLength": 1,
                            "role": "Price",
                            "price": {
                              "dutyFreeAmount": {
                                "unit": "USD",
                                "value": 12
                              }
                            },
                            "finalPrice": {
                              "dutyFreeAmount": {
                                "unit": "USD",
                                "value": 12
                              }
                            },
                            "standalonePrice": {
                              "dutyFreeAmount": {
                                "unit": "USD",
                                "value": 12
                              }
                            },
                            "taxIncluded": "Excluded"
                          }
                        ],
                        "bundledProductOfferingGroupOption": [
                          {
                            "groupOptionId": "482dd825-81cf-11ec-9599-99edba8abb8c",
                            "bundledProductOffering": [
                              {
                                "id": "31f4774c-3ad1-4cb5-8413-450d06a4d49b",
                                "name": "All-Fi Booster",
                                "localizedName": "All-Fi Booster",
                                "href": "/msapi/productoffer/discovery/v1/product-offers/31f4774c-3ad1-4cb5-8413-450d06a4d49b?channel=SelfService",
                                "description": "All-Fi Booster",
                                "productOfferingType": "Equipment",
                                "productOfferingTypeGroup": "BBDevice",
                                "isBundle": false
                              }
                            ],
                            "numberRelOfferLowerLimit": "1",
                            "numberRelOfferUpperLimit": "5"
                          }
                        ]
                      }
                    ]
                  }
                }
              }
            }
          },
          "206": {
            "description": "OK.. Returns partial response with paginaton information",
            "headers": {
              "idpctx-X-Pagination-Total-Pages": {
                "description": "integer for the total pages based on provided limit",
                "style": "simple",
                "schema": {
                  "type": "integer"
                }
              },
              "idpctx-X-Total-Count": {
                "description": "integer for the total resource response count",
                "style": "simple",
                "schema": {
                  "type": "integer"
                }
              },
              "idpctx-OC-X-Dox-trace": {
                "description": "traceID from OrderCapture api call",
                "required": true,
                "style": "simple",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProductOffering"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Error in request details",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceError"
                }
              }
            }
          },
          "500": {
            "description": "Error from backend or error connecting to backend source",
            "headers": {
              "idpctx-OC-X-Dox-trace": {
                "description": "traceID from OrderCapture api call",
                "required": true,
                "style": "simple",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceError"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AccountDetails": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string"
          },
          "accountstatus": {
            "type": "string"
          },
          "activationDate": {
            "type": "string"
          },
          "subscribers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Subscriber"
            }
          },
          "groups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Group"
            }
          },
          "systemId": {
            "type": "string"
          }
        }
      },
      "Action": {
        "type": "object",
        "properties": {
          "action": {
            "type": "string"
          },
          "modifyReason": {
            "$ref": "#/components/schemas/Reason"
          }
        },
        "description": "The action ID (resume, suspend, or change) and its reason "
      },
      "Benefit": {
        "type": "object",
        "properties": {
          "billingBenefitId": {
            "type": "string"
          },
          "billingBenefitCode": {
            "type": "string"
          },
          "promotionType": {
            "type": "string"
          },
          "offerCode": {
            "type": "string"
          },
          "startDate": {
            "type": "string"
          },
          "endDate": {
            "type": "string"
          },
          "portin": {
            "type": "boolean"
          },
          "extBenefitId": {
            "type": "string"
          }
        }
      },
      "BenefitsCustomerHasReceived": {
        "type": "object",
        "properties": {
          "benefitCode": {
            "type": "string"
          },
          "startDate": {
            "type": "string"
          },
          "endDate": {
            "type": "string"
          }
        }
      },
      "CTBenefit": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "billingBenefitId": {
            "type": "string"
          },
          "billingBenefitCode": {
            "type": "string"
          },
          "startDate": {
            "type": "string"
          },
          "endDate": {
            "type": "string"
          },
          "offerCode": {
            "type": "string"
          },
          "promotionBillingCode": {
            "type": "string"
          },
          "promotionType": {
            "type": "string"
          },
          "promotionName": {
            "type": "string"
          },
          "effectiveDate": {
            "type": "string"
          },
          "offerId": {
            "type": "string"
          },
          "nextUpReAttachRequired": {
            "type": "boolean"
          }
        }
      },
      "CartContext": {
        "type": "object",
        "properties": {
          "cpopProductIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "coupons": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CouponsRequestWrapper"
            }
          },
          "businessApps": {
            "$ref": "#/components/schemas/CartProduct"
          },
          "salesChannel": {
            "type": "string"
          },
          "validateOnlyReward": {
            "type": "boolean"
          },
          "validateAvailableQuota": {
            "type": "boolean"
          },
          "lobDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LOBDetails"
            }
          },
          "location": {
            "$ref": "#/components/schemas/Location"
          },
          "cpopOfferIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "cpopOfferCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "broadband": {
            "$ref": "#/components/schemas/CartProduct"
          },
          "IPTV": {
            "$ref": "#/components/schemas/CartProduct"
          },
          "satellite": {
            "$ref": "#/components/schemas/CartProduct"
          },
          "OTT": {
            "$ref": "#/components/schemas/CartProduct"
          },
          "wireless": {
            "$ref": "#/components/schemas/CartProduct"
          },
          "voip": {
            "$ref": "#/components/schemas/CartProduct"
          }
        }
      },
      "CartProduct": {
        "type": "object",
        "properties": {
          "tradeInValue": {
            "type": "number",
            "format": "double"
          },
          "sunsetDate": {
            "type": "string"
          },
          "isActive": {
            "type": "boolean"
          },
          "retentionPromotionIndicator": {
            "type": "boolean"
          },
          "segmentDescription": {
            "type": "string"
          },
          "coolOffPeriod": {
            "type": "string"
          },
          "freeTrialEligible": {
            "type": "boolean"
          },
          "isDefaultPromo": {
            "type": "boolean"
          },
          "accountType": {
            "type": "string"
          },
          "nextBillingDate": {
            "type": "string"
          },
          "sdgSocCode": {
            "type": "string"
          },
          "tradeInEligibiltyReason": {
            "type": "string"
          },
          "accountInFocus": {
            "type": "string"
          },
          "groupIDInFocus": {
            "type": "string"
          },
          "ctnInFocus": {
            "type": "string"
          },
          "accountDetails": {
            "$ref": "#/components/schemas/AccountDetails"
          },
          "losgs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Losg"
            }
          },
          "promotions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Promotion"
            }
          },
          "active": {
            "type": "boolean"
          },
          "defaultPromo": {
            "type": "boolean"
          },
          "products": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductInfo"
            }
          },
          "accountNumber": {
            "type": "string"
          },
          "productFamily": {
            "type": "string"
          },
          "isContracted": {
            "type": "boolean"
          },
          "benefits": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Benefit"
            }
          },
          "accountStatus": {
            "type": "string"
          },
          "rootLevelContextId": {
            "type": "string"
          },
          "installmentPlanIdentifier": {
            "type": "string"
          }
        }
      },
      "ChannelEligibility": {
        "type": "object",
        "properties": {
          "opusGroup": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "opusChannels": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "opusSubChannels": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "regions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "market": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "opusState": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "storeIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "dealerIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "callCenterIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "kioskIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "repProfile": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "ComplexContext": {
        "type": "object",
        "properties": {
          "products": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Product"
            }
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Filter"
            }
          }
        }
      },
      "ComplexFilterContext": {
        "type": "object",
        "properties": {
          "broadband": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ComplexContext"
            }
          },
          "voip": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ComplexContext"
            }
          },
          "businessApps": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ComplexContext"
            }
          },
          "wireless": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ComplexContext"
            }
          }
        }
      },
      "ContractDetails": {
        "type": "object",
        "properties": {
          "amountFinanced": {
            "type": "number",
            "format": "double"
          },
          "annualPercentageRate": {
            "type": "number",
            "format": "double"
          },
          "balancedAmount": {
            "type": "number",
            "format": "double"
          },
          "contractDisplayName": {
            "type": "string"
          },
          "contractLength": {
            "type": "integer",
            "format": "int32"
          },
          "contractType": {
            "type": "string"
          },
          "downPayment": {
            "type": "number",
            "format": "double"
          },
          "downPaymentPercent": {
            "type": "number",
            "format": "double"
          },
          "financeCharge": {
            "type": "number",
            "format": "double"
          },
          "installmentAmount": {
            "type": "number",
            "format": "double"
          },
          "installmentPlanDefinition": {
            "type": "string"
          },
          "prepaidFinanceCharge": {
            "type": "number",
            "format": "double"
          },
          "totalSalePrice": {
            "type": "number",
            "format": "double"
          },
          "_commitmentTermId": {
            "type": "string"
          }
        }
      },
      "CouponsRequestWrapper": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          }
        }
      },
      "CustomerContext": {
        "type": "object",
        "properties": {
          "accountType": {
            "type": "string"
          },
          "fan": {
            "type": "string"
          },
          "accountNumber": {
            "type": "string"
          },
          "accountInFocus": {
            "type": "string"
          },
          "ctnInFocus": {
            "type": "string"
          },
          "ctnsInFocus": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "groupIDInFocus": {
            "type": "string"
          },
          "businessSegment": {
            "type": "string"
          },
          "customerID": {
            "type": "string"
          },
          "autoPay": {
            "type": "string"
          },
          "billingDeliveryPreference": {
            "type": "string"
          },
          "fanProfile": {
            "$ref": "#/components/schemas/FanProfileContent"
          },
          "accountDetails": {
            "$ref": "#/components/schemas/AccountDetails"
          },
          "completeConnectivityIndicator": {
            "type": "string"
          }
        }
      },
      "CustomerEligibility": {
        "type": "object",
        "properties": {
          "state": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "dma": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "county": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "city": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "zipCode": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "customerCallIntent": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "custClassification": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "region": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "zipCode+4": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "CustomerIntent": {
        "type": "object",
        "properties": {
          "productFamily": {
            "type": "string"
          },
          "productStatus": {
            "type": "string"
          }
        }
      },
      "CustomerPromotion": {
        "type": "object",
        "properties": {
          "promotionId": {
            "type": "string"
          },
          "promotionStartDate": {
            "type": "string"
          },
          "promotionEndDate": {
            "type": "string"
          }
        }
      },
      "DeviceDetailsInfo": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "sku": {
            "type": "string"
          },
          "imeiType": {
            "type": "string"
          },
          "deviceMake": {
            "type": "string"
          },
          "deviceModel": {
            "type": "string"
          },
          "imeiNumber": {
            "type": "string"
          },
          "simSerialNumber": {
            "type": "string"
          }
        }
      },
      "DiscountValue": {
        "type": "object",
        "properties": {
          "amountType": {
            "type": "string"
          },
          "amount": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "FanProfile": {
        "type": "object",
        "properties": {
          "fanCategories": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "mrcModifiers": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "Filter": {
        "type": "object",
        "properties": {
          "filterName": {
            "type": "string"
          },
          "filterValues": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "Group": {
        "type": "object",
        "properties": {
          "groupId": {
            "type": "string"
          },
          "groupSdg": {
            "type": "string"
          },
          "phoneCounter": {
            "type": "string"
          },
          "maxValidPhoneCounter": {
            "type": "string"
          }
        }
      },
      "HardGood": {
        "type": "object",
        "properties": {
          "byodIndicator": {
            "type": "boolean"
          },
          "eid": {
            "type": "string"
          },
          "hardGoodType": {
            "type": "string"
          },
          "make": {
            "type": "string"
          },
          "model": {
            "type": "string"
          },
          "productImageUrl": {
            "type": "string"
          },
          "wirelessHardGoodCharacteristics": {
            "$ref": "#/components/schemas/WirelessHardGoodCharacteristics"
          }
        }
      },
      "Intent": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "segment": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "offerCategories": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "billingCode": {
            "type": "string"
          },
          "cart": {
            "type": "boolean"
          },
          "segments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Segments"
            }
          },
          "dealerCode": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Action"
            }
          },
          "planType": {
            "type": "string"
          },
          "coverageType": {
            "type": "string"
          },
          "destinationCode": {
            "type": "string"
          }
        }
      },
      "LOBDetails": {
        "type": "object",
        "properties": {
          "businessSegment": {
            "type": "string"
          },
          "customerSegement": {
            "type": "string"
          },
          "offerActionType": {
            "type": "string"
          },
          "productFamily": {
            "type": "string"
          },
          "lobType": {
            "type": "string"
          },
          "losgs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Losgs"
            }
          }
        }
      },
      "LineItem": {
        "type": "object",
        "properties": {
          "ctBenefits": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CTBenefit"
            }
          },
          "lineItemId": {
            "type": "string"
          },
          "action": {
            "type": "string"
          },
          "productKey": {
            "type": "string"
          },
          "skuKey": {
            "type": "string"
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          },
          "commitmentTermId": {
            "type": "string"
          },
          "tierAttr": {
            "type": "string"
          },
          "deviceCategory": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "billingCode": {
            "type": "string"
          },
          "productType": {
            "type": "string"
          },
          "offerId": {
            "type": "string"
          },
          "productId": {
            "type": "string"
          },
          "productSKU": {
            "type": "string"
          },
          "itemType": {
            "type": "string"
          },
          "promotionReferences": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "productGroupReferences": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "offerCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "billingProductCode": {
            "type": "string"
          },
          "benefits": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Benefit"
            }
          },
          "productCode": {
            "type": "string"
          },
          "hardGood": {
            "$ref": "#/components/schemas/HardGood"
          },
          "price": {
            "$ref": "#/components/schemas/Price"
          },
          "contractDetails": {
            "$ref": "#/components/schemas/ContractDetails"
          }
        }
      },
      "Location": {
        "type": "object",
        "properties": {
          "zipCode": {
            "type": "string"
          },
          "dma": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "county": {
            "type": "string"
          },
          "region": {
            "type": "string"
          },
          "market": {
            "type": "string"
          },
          "subMarket": {
            "type": "string"
          },
          "country": {
            "type": "string"
          }
        }
      },
      "Losg": {
        "type": "object",
        "properties": {
          "losgId": {
            "type": "string"
          },
          "productFamily": {
            "type": "string"
          },
          "lineItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LineItem"
            }
          },
          "flowType": {
            "type": "string"
          }
        }
      },
      "Losgs": {
        "type": "object",
        "properties": {
          "lineItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LineItem"
            }
          },
          "productFamily": {
            "type": "string"
          },
          "flowType": {
            "type": "string"
          },
          "ctnInFocus": {
            "type": "string"
          },
          "losgId": {
            "type": "string"
          },
          "inCart": {
            "type": "boolean"
          },
          "withPortIn": {
            "type": "boolean"
          },
          "losgType": {
            "type": "string"
          },
          "losgSubType": {
            "type": "string"
          },
          "primaryIndicator": {
            "type": "boolean"
          }
        }
      },
      "OfferRequest": {
        "type": "object",
        "properties": {
          "accountTypes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "addOnType": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "benefitCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "billingProductCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "bundleProductCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "bundleProductIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "benefitsCodesToSuppressOffer": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "benefitsCustomerHasReceived": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BenefitsCustomerHasReceived"
            }
          },
          "businessSegment": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "customerSegments": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "businessSegments": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "cartContext": {
            "$ref": "#/components/schemas/CartContext"
          },
          "channelEligibility": {
            "$ref": "#/components/schemas/ChannelEligibility"
          },
          "fanId": {
            "type": "string"
          },
          "contractIndicator": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "customerContext": {
            "$ref": "#/components/schemas/CustomerContext"
          },
          "customerEligibility": {
            "$ref": "#/components/schemas/CustomerEligibility"
          },
          "customerIntent": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerIntent"
            }
          },
          "intent": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Intent"
            }
          },
          "fanProfile": {
            "$ref": "#/components/schemas/FanProfile"
          },
          "marketingDisplay": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "heartValue": {
            "type": "string"
          },
          "offerActionType": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "offerCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "offerIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "offerProductFamily": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "offerStatus": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "offerTypes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "pagination": {
            "$ref": "#/components/schemas/Pagination"
          },
          "planSubType": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "productCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "qualifyingProductCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "qualifyingProducts": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "salesChannel": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "tribalIndicator": {
            "type": "string"
          },
          "offerClassificationType": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "offerClassificationSubType": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "migrationServiceType": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "creditRisk": {
            "type": "string"
          },
          "orderDate": {
            "type": "string"
          },
          "complexfilterContext": {
            "$ref": "#/components/schemas/ComplexFilterContext"
          },
          "paymentType": {
            "type": "string"
          },
          "customerSubType": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "fan": {
            "type": "string"
          },
          "fanCategories": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "couponStatus": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "productsOnAccountToSuppressOffer": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "migrationIndicator": {
            "type": "boolean"
          },
          "addressId": {
            "type": "string"
          },
          "customerType": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "location": {
            "$ref": "#/components/schemas/Location"
          },
          "intentOnlyOffers": {
            "type": "boolean"
          },
          "swimlaneSwitchEligible": {
            "type": "boolean"
          },
          "tradeInValue": {
            "type": "string"
          },
          "tradeInModels": {
            "type": "string"
          },
          "reconnectCustomer": {
            "type": "boolean"
          },
          "dealerCode": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "portIn": {
            "type": "boolean"
          },
          "extBenefitCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "billingBenefitIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "returnPortInOffers": {
            "type": "boolean"
          },
          "existingProductOnAccount": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "linkedUverseAccount": {
            "type": "string"
          },
          "storeId": {
            "type": "string"
          },
          "offerTrayEnabled": {
            "type": "boolean"
          },
          "selfServiceChannel": {
            "type": "boolean"
          },
          "uuid": {
            "type": "string"
          },
          "accchannel": {
            "type": "boolean"
          },
          "upgradeFlow": {
            "type": "boolean"
          },
          "offerProductTypes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "isExpiredOffers": {
            "type": "boolean"
          },
          "isOfferTrayEnabled": {
            "type": "boolean"
          },
          "isOffersForYou": {
            "type": "boolean"
          },
          "isPaytoPromoReached": {
            "type": "boolean"
          },
          "isEarlyUpgrade": {
            "type": "boolean"
          },
          "selectedUpgradeOption": {
            "type": "string"
          },
          "nextUpAnytime": {
            "type": "boolean"
          },
          "nextUptradeInValue": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "Pagination": {
        "type": "object",
        "properties": {
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "limit": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "Price": {
        "type": "object",
        "properties": {
          "taxIncludedAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "dutyFreeAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "taxAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "taxRate": {
            "type": "number",
            "format": "float"
          },
          "percentage": {
            "type": "number",
            "format": "float"
          },
          "priceReduction": {
            "$ref": "#/components/schemas/Money"
          },
          "priceOverride": {
            "$ref": "#/components/schemas/Money"
          },
          "priceRecordId": {
            "type": "string",
            "description": "The unique identifier of the price in the pricing domain. "
          },
          "impactingPriceParameter": {
            "type": "array",
            "description": "The parameters that impact the price ",
            "items": {
              "$ref": "#/components/schemas/PriceParam"
            }
          },
          "appliedTax": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AppliedTax"
            }
          },
          "chargeType": {
            "type": "string"
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "description": "The price of current catalog item. It is set to null if the price record is missing or if there is any exception. "
      },
      "PriceAdjustment": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "promoId": {
            "type": "string"
          },
          "benefitCode": {
            "type": "string"
          },
          "reasonCode": {
            "type": "string"
          },
          "amount": {
            "type": "number"
          },
          "discountVal": {
            "$ref": "#/components/schemas/DiscountValue"
          },
          "waivedIndicator": {
            "type": "boolean"
          },
          "isDiscountRolledUp": {
            "type": "boolean"
          }
        }
      },
      "PriceAdjustments": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "benefitCode": {
            "type": "string"
          },
          "amount": {
            "type": "number"
          }
        }
      },
      "Product": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the product "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the product "
          },
          "name": {
            "type": "string",
            "description": "Name of the product "
          },
          "referenceId": {
            "type": "string",
            "description": "Reference ID of the product "
          },
          "status": {
            "type": "string",
            "description": "State of the product in the Product Inventory subdomain "
          },
          "version": {
            "type": "string",
            "description": "Version of the product in the Product Inventory subdomain "
          },
          "primaryProductId": {
            "type": "string",
            "description": "Unique identifier of the primary product. This property is populated only when the product is a product reference for the *Enable By* relation, and the referenced product is a product in the inventory and is not part of the order. In this case, the property contains the ID of the product ancestor that is marked as primary. This property and *productOrderRef* are mutually exclusive. "
          },
          "activationDate": {
            "type": "string",
            "description": "Date on which the product was activated "
          },
          "terminationDate": {
            "type": "string",
            "description": "Date on which the product is terminated "
          },
          "alternateId": {
            "type": "integer",
            "description": "Alternate identifier of the product ",
            "format": "int64"
          },
          "relatedParty": {
            "type": "array",
            "description": "Party associated with the product ",
            "items": {
              "$ref": "#/components/schemas/RelatedPartyRef"
            }
          },
          "productSpecification": {
            "$ref": "#/components/schemas/ProductSpecificationRef"
          },
          "characteristic": {
            "type": "array",
            "description": "Characteristic of the product ",
            "items": {
              "$ref": "#/components/schemas/ProductCharacteristic"
            }
          },
          "productCharacteristic": {
            "type": "array",
            "description": "Characteristic of the product ",
            "items": {
              "$ref": "#/components/schemas/ProductCharacteristic"
            }
          },
          "place": {
            "type": "array",
            "description": "Place of the product ",
            "items": {
              "$ref": "#/components/schemas/PlaceRef"
            }
          },
          "productRelationship": {
            "type": "array",
            "description": "Relationship of the product ",
            "items": {
              "$ref": "#/components/schemas/ProductRelationship"
            }
          },
          "metadata": {
            "type": "array",
            "description": "Product specification metadata ",
            "items": {
              "$ref": "#/components/schemas/Metadata"
            }
          },
          "productOrder": {
            "$ref": "#/components/schemas/ProductOrderRef"
          },
          "statusReason": {
            "type": "array",
            "description": "The reason of the product state. This property is populated only when the referenced product is a product in the inventory. ",
            "items": {
              "$ref": "#/components/schemas/StatusReason"
            }
          },
          "nextStatusReason": {
            "type": "array",
            "description": "The reason of the product state. This property is populated only when the referenced product is a product in the inventory. ",
            "items": {
              "$ref": "#/components/schemas/Reason"
            }
          },
          "businessActivity": {
            "type": "array",
            "description": "Business activities with correlated dates for each activity ",
            "items": {
              "$ref": "#/components/schemas/BusinessActivity"
            }
          },
          "statusChangeDate": {
            "type": "string",
            "description": "The product last status chane date.May be equal to the network fulfillment date, or set according to different logic. "
          },
          "productOrderItem": {
            "type": "array",
            "description": "Place of the product ",
            "items": {
              "$ref": "#/components/schemas/RelatedProductOrderItem"
            }
          },
          "product": {
            "type": "array",
            "description": "Place of the product ",
            "items": {
              "type": "string",
              "description": "Place of the product "
            }
          },
          "productCriteria": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductCriteria"
            }
          },
          "sourceReason": {
            "$ref": "#/components/schemas/Reason"
          },
          "targetReason": {
            "$ref": "#/components/schemas/Reason"
          },
          "targetRelatedParty": {
            "$ref": "#/components/schemas/RelatedPartyRef"
          },
          "additionalTargetRelatedParty": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RelatedPartyRef"
            }
          },
          "targetBillingAccount": {
            "$ref": "#/components/schemas/BillingAccountRef"
          },
          "statusChangeReason": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Reason"
            }
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "description": "An owned product or a product to be provided  "
      },
      "ProductInfo": {
        "type": "object",
        "properties": {
          "basePrice": {
            "type": "string"
          },
          "cpopProductId": {
            "type": "string"
          },
          "productCode": {
            "type": "string"
          },
          "productType": {
            "type": "string"
          },
          "pricePlanCode": {
            "type": "string"
          },
          "billingProductCode": {
            "type": "string"
          },
          "productId": {
            "type": "string"
          },
          "streamType": {
            "type": "string"
          },
          "promotions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerPromotion"
            }
          },
          "lineType": {
            "type": "string"
          }
        }
      },
      "Promotion": {
        "required": [
          "description",
          "id",
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true, The unique ID of the promotion. e.g. 2074e0c0-08b6-49ea-8ea9-9390651ab676"
          },
          "name": {
            "type": "string",
            "description": "Required=true, The name of the promotion. e.g. Autopay Discount"
          },
          "description": {
            "type": "string",
            "description": "Required=true, The description of the promotion for the business user. e.g. Discount of flat recurring $10 when subscribed to auto pay option."
          },
          "type": {
            "type": "string",
            "description": "Required=true, The type of the promotion. e.g. discount"
          },
          "validFor": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "applyPolicy": {
            "type": "string",
            "description": "Required=false, Defines the policy to apply the promotion. e.g. automatic"
          },
          "href": {
            "type": "string",
            "description": "Required=true, href to the promotion"
          },
          "productOfferingTotalPrice": {
            "type": "array",
            "description": "Required=false, The productOfferingTotalPrice of the promotion. e.g. ",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingPriceRefOrValue"
            }
          },
          "promotionCharacteristics": {
            "type": "array",
            "description": "Required=false, The characteristics of the promotion. e.g. ",
            "items": {
              "$ref": "#/components/schemas/PromotionCharacteristic"
            }
          },
          "additionalQualificationCriteria": {
            "type": "array",
            "description": "Required=false, characteristics items with value as List",
            "items": {
              "$ref": "#/components/schemas/AdditionalQualificationCriteria"
            }
          }
        },
        "description": "Promotion Object"
      },
      "QualifyingDetail": {
        "type": "object",
        "properties": {
          "productFamily": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        }
      },
      "Segments": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "token": {
            "type": "string"
          },
          "flag": {
            "type": "boolean"
          }
        }
      },
      "Soc": {
        "type": "object",
        "properties": {
          "socId": {
            "type": "string"
          },
          "dataGroupInd": {
            "type": "string"
          },
          "socMode": {
            "type": "string"
          }
        }
      },
      "Subscribers": {
        "type": "object",
        "properties": {
          "subscriberNumber": {
            "type": "string"
          },
          "subscriberStatus": {
            "type": "string"
          },
          "groupId": {
            "type": "string"
          },
          "primary": {
            "type": "boolean"
          },
          "deviceDetailsInfo": {
            "$ref": "#/components/schemas/DeviceDetailsInfo"
          },
          "products": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Product"
            }
          },
          "socs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Soc"
            }
          },
          "sdgSocCode": {
            "type": "string"
          },
          "sdfSocCode": {
            "type": "string"
          }
        }
      },
      "WirelessHardGoodCharacteristics": {
        "type": "object",
        "properties": {
          "deviceCategory": {
            "type": "string"
          },
          "equipmentType": {
            "type": "string"
          },
          "imei": {
            "type": "string"
          },
          "imeiType": {
            "type": "string"
          },
          "phoneType": {
            "type": "string"
          },
          "techType": {
            "type": "string"
          },
          "productSKU": {
            "type": "string"
          },
          "productId": {
            "type": "string"
          },
          "_deviceSubType": {
            "type": "string"
          }
        }
      },
      "BenefitItem": {
        "required": [
          "action",
          "href",
          "id",
          "inCart",
          "itemState",
          "itemStatus",
          "itemType",
          "pathToRoot",
          "promotionCriteriaGroupId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true, The unique ID of the benefit item. e.g. ff1f96e8-704e-4d97-92c6-35008ec1c0ac"
          },
          "itemType": {
            "type": "string",
            "description": "Required=true, The type of the benefit item. e.g. catalog"
          },
          "itemStatus": {
            "type": "string",
            "description": "Required=true, The benefit item Status new , keep, revoke "
          },
          "promotionCriteriaGroupId": {
            "type": "string",
            "description": "Required=true, The ID of the promotion criteria group (root or nested) as part of which the item is qualified as a benefit item. e.g. 6bb6c561-4707-4a20-ada1-027a35b57768"
          },
          "pathToRoot": {
            "type": "string",
            "description": "Required=true, The path from the current item in the oroduct offering structure to the root. This property is populated if the benefit item is a nested item. e.g. /d134f2c2-37cd-4eab-96e7-d2d12350e3b0_d8bfb8be-79dd-45e6-95c6-0bc2e30f12d8/943200e2-00da-4555-8f35-a1141683a866_ff1f96e8-704e-4d97-92c6-35008ec1c0ac"
          },
          "action": {
            "type": "array",
            "description": "Required=true, The action of the promotion. When customers meet the conditions in the promotion pattern, they can be given the benefits that are included in the action. Note - duration field is deprecated. Use duarationPolicy instead. e.g. Refer PromotionAction attributes and example values",
            "items": {
              "$ref": "#/components/schemas/PromotionAction"
            }
          },
          "href": {
            "type": "string",
            "description": "Required=true, The self-reference to the trigger item"
          },
          "inCart": {
            "type": "boolean",
            "description": "Required=true, The benefit item Status new , keep, revoke "
          },
          "potentialBenefitItem": {
            "type": "array",
            "description": "Required=false, This will show potential offers required to qualify for promotion",
            "items": {
              "$ref": "#/components/schemas/PotentialBenefitItem"
            }
          },
          "itemState": {
            "type": "string",
            "description": "Required=true, The benefit item Status new , keep, revoke "
          }
        },
        "description": "benefit item object"
      },
      "ContainedResource": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of the resource "
          },
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource "
          },
          "variable": {
            "type": "array",
            "description": "Variables that are related to the resource ",
            "items": {
              "$ref": "#/components/schemas/Variable"
            }
          }
        },
        "description": "Resources that are contained in the validation message "
      },
      "Context": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the context of the rule "
          },
          "type": {
            "type": "string",
            "description": "The type of the context of the rule "
          },
          "value": {
            "type": "array",
            "description": "The value of the context of the rule ",
            "items": {
              "type": "string",
              "description": "The value of the context of the rule "
            }
          }
        },
        "description": "The reference to the context definition of the rule "
      },
      "CountRestriction": {
        "type": "object",
        "properties": {
          "benefitLimit": {
            "type": "integer",
            "description": "The benefit limit of the count restriction. Specifies how many of the counted items can be included within a promotion instance as benefits ",
            "format": "int32"
          },
          "payForCount": {
            "type": "integer",
            "description": "The payed item limit of the count restriction. Specifies how many of the counted items within a promotion instance how many should be payed for ",
            "format": "int32"
          }
        },
        "description": "The benefit limit and BOGO restrictions related to the count.  In case of benefit limit restriction, specifies how many of the counted items can be included within a promotion instance. In case of BOGO restriction, specifies how many of the counted items are benefited and how many should be payed for. "
      },
      "DurationPolicy": {
        "type": "object",
        "properties": {
          "duration": {
            "$ref": "#/components/schemas/Quantity"
          },
          "startDatePolicy": {
            "type": "string"
          },
          "endDatePolicy": {
            "type": "string"
          },
          "effectiveFor": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "terminationPolicy": {
            "type": "string"
          }
        },
        "description": "Policy for calculting a limited duration for any entity "
      },
      "ImmediatePromotion": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the immediate promotion "
          },
          "status": {
            "type": "string",
            "description": "Status of the instance of the immediate promotion "
          },
          "state": {
            "type": "string",
            "description": "The apply state of the qualified promotion. The state can have the following values: - 'applied' - For an immediate promotion that all of it's benefits are applied - 'notApplied' - For an immediate promotion that none of it's benefits are applied - future - 'partiallyApplied' - For an immediate promotion that part of it's benefits are applied - future - 'pendingApply' - Received in the request for an immediate promotion for which certain benefits, which are selected externally by a consuming application, should be applied "
          },
          "promotion": {
            "$ref": "#/components/schemas/PromotionRef"
          },
          "productPromotion": {
            "$ref": "#/components/schemas/ProductPromotionRef"
          },
          "triggerItem": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TriggerItem"
            }
          },
          "benefitItem": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BenefitItem"
            }
          },
          "immediatePromotionCharacteristic": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContextCharacteristic"
            }
          },
          "reason": {
            "$ref": "#/components/schemas/ModifyReason"
          },
          "relatedParty": {
            "$ref": "#/components/schemas/RelatedPartyRef"
          },
          "actionReason": {
            "$ref": "#/components/schemas/ActionReason"
          }
        },
        "description": "Immediate promotion "
      },
      "ManualPromotionModifyReason": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the modification reason "
          },
          "reasonText": {
            "type": "string",
            "description": "The free text for the modification reason, for cases where the modify reason type requires the input of free text "
          },
          "action": {
            "type": "string",
            "description": "The action to be performed "
          }
        },
        "description": "The modification reason associated with the optional promotion modification "
      },
      "ManualPromotionQualification": {
        "type": "object",
        "properties": {
          "immediatePromotion": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ImmediatePromotion"
            }
          },
          "promotionQualificationMessage": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidationMessage"
            }
          }
        }
      },
      "ProductOfferingBenefit": {
        "type": "object",
        "properties": {
          "productOfferingId": {
            "type": "string",
            "description": "the id of the product offering granted as a benefit "
          },
          "promotionPriceAlteration": {
            "type": "array",
            "description": "referecne to price entity representing the actual monetary discount ",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingPriceRef"
            }
          }
        },
        "description": "Reference to a product offering used as a free offer benefit by the promotion"
      },
      "ProductOfferingPriceRef": {
        "required": [
          "actionType",
          "id",
          "priceType"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 100,
            "minLength": 10,
            "type": "string",
            "description": "Required=true, The unique ID of the action. e.g. 3f0cfcaf-613e-4919-8f09-30bbf8c05967"
          },
          "actionType": {
            "type": "string",
            "description": "Required=true, ProductOfferingPrice price type . e.g. OC."
          },
          "priceType": {
            "type": "string",
            "description": "Required=true, ProductOfferingPrice price type . e.g. OC."
          }
        },
        "description": "ProductOfferingPriceRef Object for promotionPriceAlteration of Promotion pattern promotion action relevant pricing entity that defines the actual discount"
      },
      "ProductPromotionRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the product promotion "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the product promotion "
          }
        },
        "description": "Reference to the product promotion. "
      },
      "PromotionAction": {
        "required": [
          "actionType",
          "actionValue",
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 100,
            "minLength": 10,
            "type": "string",
            "description": "Required=true, The unique ID of the action. e.g. 3f0cfcaf-613e-4919-8f09-30bbf8c05967"
          },
          "name": {
            "type": "string",
            "description": "Required=false, The localized name of the promotion. e.g. Discount"
          },
          "actionType": {
            "type": "string",
            "description": "Required=true, The type of the benefit. e.g. Product Offering."
          },
          "actionValue": {
            "type": "integer",
            "description": "Required=true, The value of the action. e.g. type is Price Alteration, the value is populated with '1'.",
            "format": "int32"
          },
          "promotionPriceAlteration": {
            "$ref": "#/components/schemas/ProductOfferingPriceRef"
          },
          "durationPolicy": {
            "$ref": "#/components/schemas/DurationPolicy"
          },
          "validFor": {
            "$ref": "#/components/schemas/TimePeriod"
          }
        },
        "description": "PromotionAction Object for The promotion action of the promotion pattern related entities"
      },
      "PromotionCriteria": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the criteria "
          },
          "criteriaParam": {
            "type": "string"
          },
          "criteriaParamName": {
            "type": "string"
          },
          "criteriaOperator": {
            "type": "string"
          },
          "criteriaValue": {
            "type": "string"
          },
          "criteriaUOM": {
            "type": "string"
          },
          "criteriaCharacteristic": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Context"
            }
          }
        }
      },
      "PromotionCriteriaGroup": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the criteria group "
          },
          "groupName": {
            "type": "string",
            "description": "The name of the criteria group "
          },
          "criteriaType": {
            "type": "string",
            "description": "The type of the criteria. Usually, represents a context entity such as Customer, Product Offering, Product, and so on. "
          },
          "criteriaTypeMethod": {
            "type": "string",
            "description": "The criteria type method used to describe the criteria group type. The supported criteria group types are - Scope, Criteria, List, Aggregation, and so on. "
          },
          "relationTypeInGroup": {
            "type": "string",
            "description": "The logical relation type amongst the various criteria inside the promotion criteria group. The AND and the OR logical relations are supported. "
          },
          "equalVariable": {
            "type": "string",
            "description": "Relevant for criteria groups with criteriaTypeMethod = Scope. Represents a common parameter that must be qualified on all criteria groups defined uder the scope. "
          },
          "aggregationFunctionCriteria": {
            "$ref": "#/components/schemas/PromotionCriteria"
          },
          "criteria": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PromotionCriteria"
            }
          },
          "criteriaGroup": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PromotionCriteriaGroup"
            }
          },
          "scopeCriteria": {
            "$ref": "#/components/schemas/PromotionCriteriaGroup"
          },
          "countRestriction": {
            "$ref": "#/components/schemas/CountRestriction"
          }
        },
        "description": "For the Price Alteration type, the object on which the action is being performed, that is, the promotion discount. This object represents a promotion criteria group. "
      },
      "PromotionCriteriaGroupRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          }
        },
        "description": "The reference to the object of the action. For the Price Alteration type, this object is the promotion discount - represents a reference to an existing promotion criteria group in the current promotion rule. If there is a reference only, the ID of the promotion criteria group is populated. "
      },
      "PromotionRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the promotion "
          },
          "name": {
            "type": "string",
            "description": "Name of the promotion "
          },
          "description": {
            "type": "string",
            "description": "Promotion description for a business user "
          },
          "validFor": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "type": {
            "type": "string",
            "description": "The type of the promotion "
          },
          "priority": {
            "type": "integer",
            "description": "The priority of the promotion ",
            "format": "int32"
          },
          "applyPolicy": {
            "type": "string",
            "description": "Defines the policy to apply the promotion - can be manual or automatic  "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the promotion "
          }
        },
        "description": "Reference to the promotion "
      },
      "QualifyManualPromotionResponse": {
        "type": "object",
        "properties": {
          "promotionQualification": {
            "$ref": "#/components/schemas/ManualPromotionQualification"
          }
        }
      },
      "Quantity": {
        "type": "object",
        "properties": {
          "units": {
            "type": "string"
          },
          "amount": {
            "type": "number"
          }
        },
        "description": "Quantity of a resource "
      },
      "RelatedPartyRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the related party "
          },
          "role": {
            "type": "string",
            "description": "Role played by the related party "
          },
          "extensions": {
            "type": "array",
            "description": "extensions of the related party ",
            "items": {
              "$ref": "#/components/schemas/NameValuePair"
            }
          },
          "@referredType": {
            "type": "string",
            "description": "Referred type of the related party "
          }
        },
        "description": "Party or party role that is linked to a specific entity "
      },
      "RelatedResource": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of the resource "
          },
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource "
          },
          "variable": {
            "type": "array",
            "description": "Variables related to the resource ",
            "items": {
              "$ref": "#/components/schemas/Variable"
            }
          },
          "containedResource": {
            "type": "array",
            "description": "Other resources, specs, or offers that are linked to the message but did not trigger the validation message ",
            "items": {
              "$ref": "#/components/schemas/ContainedResource"
            }
          }
        },
        "description": "Resource that is associated with the validation message (that is, triggered the validation failure) "
      },
      "RelatedTriggerItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The unique ID of the related trigger item "
          },
          "role": {
            "type": "string",
            "description": "The role of the related trigger item "
          }
        },
        "description": "A relation to a specific trigger item. For example, for promotion action with actionType = productOffering, this relation indicates a relevant trigger item to which the action should be related. The type of the relation is specified in 'role' field "
      },
      "TimePeriod": {
        "type": "object",
        "properties": {
          "startDateTime": {
            "type": "string",
            "description": "Required=false, valid start date and time. e.g. 2031-04-23T12:38:31.774Z"
          },
          "endDateTime": {
            "type": "string",
            "description": "Required=false, valid end date and time. e.g. 2021-01-31T14:00:00Z"
          }
        },
        "description": "validFor Object for validate start and end date of the related entity"
      },
      "TriggerItem": {
        "required": [
          "id",
          "itemState",
          "itemType",
          "pathToRoot",
          "promotionCriteriaGroupId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true, The unique ID of the trigger item. e.g. 943200e2-00da-4555-8f35-a1141683a866_ff1f96e8-704e-4d97-92c6-35008ec1c0ac"
          },
          "itemType": {
            "type": "string",
            "description": "Required=true, The type of the trigger item. e.g. catalog"
          },
          "itemStatus": {
            "type": "string"
          },
          "promotionCriteriaGroupId": {
            "type": "string",
            "description": "Required=true, The ID of the promotion criteria group (root or nested) as part of which the item is qualified as a trigger item. e.g. 6bb6c561-4707-4a20-ada1-027a35b57768"
          },
          "pathToRoot": {
            "type": "string",
            "description": "Required=true, The path from the current item in the product offering structure to the root. This property is populated if the trigger item is a nested item. e.g. /d134f2c2-37cd-4eab-96e7-d2d12350e3b0_d8bfb8be-79dd-45e6-95c6-0bc2e30f12d8/943200e2-00da-4555-8f35-a1141683a866_ff1f96e8-704e-4d97-92c6-35008ec1c0ac"
          },
          "href": {
            "type": "string",
            "description": "Required=false, The self-reference to the trigger item"
          },
          "itemState": {
            "type": "string",
            "description": "Required=true, The benefit item Status new , keep, revoke "
          }
        },
        "description": "Trigger item Object"
      },
      "ValidationMessage": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Non-localized name identifier of the validation message "
          },
          "text": {
            "type": "string",
            "description": "Localized descriptive validation message "
          },
          "type": {
            "type": "string",
            "description": "Type of the validation message "
          },
          "subtype": {
            "type": "string",
            "description": "Distinct code which represents the issue "
          },
          "parameter": {
            "type": "array",
            "description": "Name/value pair of the validation message ",
            "items": {
              "$ref": "#/components/schemas/ValidationMessageParameter"
            }
          },
          "severity": {
            "type": "string",
            "description": "Severity of the validation message "
          },
          "path": {
            "type": "string",
            "description": "Path to the resource part to which the validation message is related "
          },
          "resource": {
            "type": "array",
            "description": "Resource that is associated with the message ",
            "items": {
              "$ref": "#/components/schemas/RelatedResource"
            }
          }
        },
        "description": "Message associated with the validation failure "
      },
      "ValidationMessageParameter": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the parameter "
          },
          "value": {
            "type": "array",
            "description": "Value of the parameter ",
            "items": {
              "type": "string",
              "description": "Value of the parameter "
            }
          }
        },
        "description": "Name/value pair of the validation message parameter "
      },
      "Variable": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of the variable "
          },
          "id": {
            "type": "string",
            "description": "Unique identifier of the variable "
          },
          "value": {
            "type": "array",
            "description": "Value(s) of the variable ",
            "items": {
              "type": "string",
              "description": "Value(s) of the variable "
            }
          }
        },
        "description": "Variable that is associated with a resource "
      },
      "Error": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        }
      },
      "ServiceError": {
        "type": "object",
        "properties": {
          "errorId": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      },
      "QualificationPrefetch": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string"
          },
          "productType": {
            "type": "string"
          },
          "channel": {
            "type": "string"
          }
        }
      },
      "Message": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Required=false, The type of the message. e.g. displayName"
          },
          "message": {
            "type": "string",
            "description": "Required=false, The localized text of the message. e.g. Qualifier:WLS, Beneficiary:AIA"
          }
        },
        "description": "The message that describes the promotion. The message can be of several types. Typically, the message is presented by consumers in their user interface."
      },
      "PromotionCharacteristic": {
        "required": [
          "name",
          "value"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Required=true, The text ID of the promotion characteristic. e.g. promoType"
          },
          "value": {
            "type": "string",
            "description": "Required=true, Value of the promotion characteristic. e.g. flatrate"
          }
        },
        "description": "The list of the descriptive characteristics for the Discovery flows derived from the promotions and included in the promotion specification (if exists)"
      },
      "PromotionPattern": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true, The unique ID of the promotion pattern. e.g. 5694779d-f15c-444d-806e-26f7a284258c"
          },
          "description": {
            "type": "string",
            "description": "Required=false, The localized description of the promotion pattern. e.g. "
          },
          "name": {
            "type": "string",
            "description": "Required=false, The name of the promotion pattern. e.g. "
          },
          "relationTypeAmongGroup": {
            "type": "string",
            "description": "Required=false, The relationTypeAmongGroup of the promotion pattern. e.g. "
          },
          "priority": {
            "type": "integer",
            "description": "Required=false, The priority of the promotion pattern. e.g. 1",
            "format": "int32"
          },
          "action": {
            "type": "array",
            "description": "Required=false, The benefits of the promotion. e.g. ",
            "items": {
              "$ref": "#/components/schemas/PromotionAction"
            }
          },
          "criteriaGroup": {
            "type": "array",
            "description": "Required=false, This object represents a promotion criteria group, that is promotion discount.",
            "items": {
              "$ref": "#/components/schemas/PromotionCriteriaGroup"
            }
          }
        },
        "description": "promotionPattern Object for The pattern of the promotion related entity"
      },
      "Promotions": {
        "required": [
          "applyPolicy",
          "crossProduct",
          "href",
          "id",
          "name",
          "selectionPolicy",
          "type",
          "validFor"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 100,
            "minLength": 10,
            "type": "string",
            "description": "Required=true, The ID of the promotion. e.g. 3f0cfcaf-613e-4919-8f09-30bbf8c05967"
          },
          "href": {
            "type": "string",
            "description": "Required=true, The self-reference to the item. e.g. https://amd-apigw-stack-service-amo-eks2-d2d2-runtime.dtd.attbsse.amdocs.com/promotion/v0/promotion/3f0cfcaf-613e-4919-8f09-30bbf8c05967"
          },
          "name": {
            "type": "string",
            "description": "Required=true, The localized name of the promotion. e.g. AirPods 10% off Discount"
          },
          "description": {
            "type": "string",
            "description": "Required=false, The localized description of the promotion. e.g. Discount of 10% One Time when Purchasing AirPods Accessory"
          },
          "type": {
            "type": "string",
            "description": "Required=true, The type of the promotion. e.g. Discount"
          },
          "lastUpdate": {
            "type": "string",
            "description": "Required=false, The lastUpate of the promotion. e.g. "
          },
          "priority": {
            "type": "integer",
            "description": "Required=false, The priority of the promotion. e.g. 1",
            "format": "int32"
          },
          "applyPolicy": {
            "type": "string",
            "description": "Required=true, Defines the policy to apply the qualified promotion - can be manual or automatic. e.g. manual"
          },
          "selectionPolicy": {
            "type": "string",
            "description": "Required=true, Defines how to select the benefited offer in case there are more than required by a promotion condition. e.g. byPurchaseDate"
          },
          "message": {
            "type": "array",
            "description": "Required=false, The message that describes the promotion. e.g. type: displayName, message: Qualifier:WLS, Beneficiary:AIA",
            "items": {
              "$ref": "#/components/schemas/Message"
            }
          },
          "crossProduct": {
            "type": "boolean",
            "description": "Required=true, Indicates whether the promotion rule refers to cross-product. e.g. based on Promition domain"
          },
          "validFor": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "pattern": {
            "$ref": "#/components/schemas/PromotionPattern"
          },
          "promotionCharacteristics": {
            "type": "array",
            "description": "Required=false, The characteristics of the promotion. e.g. ",
            "items": {
              "$ref": "#/components/schemas/PromotionCharacteristic"
            }
          }
        },
        "description": "Represents entities of managable promotion qualification and promotion resources, It enables qualifying the available promotions for the relevant items - product offerings, product order items, shopping cart items, and configuration items."
      },
      "Category": {
        "required": [
          "href",
          "id",
          "isRoot",
          "localizedName",
          "name",
          "validFor"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 100,
            "type": "string",
            "description": "Required=true, Unique identifier of the category. e.g. f1c5f22d-c331-47e2-ba3a-4814fde0e56c"
          },
          "name": {
            "maxLength": 100,
            "type": "string",
            "description": "Required=true, Name of the category. e.g. Wbb_Plan_Services",
            "enum": [
              "Wbb_Plan_Services",
              "Wbb_Plan",
              "Fixed_Wbb_Plans"
            ]
          },
          "localizedName": {
            "maxLength": 100,
            "type": "string",
            "description": "Required=true, The localized name of the category. e.g. Plan & Services"
          },
          "description": {
            "maxLength": 500,
            "type": "string",
            "description": "Required=false, The localized description of the category. e.g. Plan & Services"
          },
          "href": {
            "type": "string",
            "description": "Required=true, The link to the productoffering. e.g. https://att.com/​msapi/cpopoffer/v1/productOfferingDiscovery/v1.1/category/f1c5f22d-c331-47e2-ba3a-4814fde0e56c"
          },
          "isRoot": {
            "type": "boolean",
            "description": "Required=true, If true, this Boolean indicates that the category is a root of categories. e.g. true"
          },
          "lastUpdate": {
            "type": "string",
            "description": "Required=false,  Date and time of the last update. e.g. 2020-08-27T00:00:00Z"
          },
          "lifecycleStatus": {
            "type": "string",
            "description": "Required=false, Used to indicate the current lifecycle status"
          },
          "version": {
            "type": "string",
            "description": "Required=true, Category version. e.g. 1.0"
          },
          "parentId": {
            "type": "string",
            "description": "Required=true, Unique identifier of the parent category. e.g. f1c5f22d-c331-47e2-ba3a-4814fde0e56c"
          },
          "validFor": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "subCategory": {
            "maxLength": 100,
            "type": "array",
            "description": "Required=false, A list of sub category references.",
            "items": {
              "$ref": "#/components/schemas/CategoryRef"
            }
          },
          "productOffering": {
            "maxLength": 100,
            "type": "array",
            "description": "Required=false, A list of Product Offering references.",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingRef"
            }
          },
          "category": {
            "maxLength": 100,
            "type": "array",
            "description": "Required=false, A list of category.",
            "items": {
              "$ref": "#/components/schemas/Category"
            }
          },
          "isLeaf": {
            "type": "boolean",
            "description": "Required=false,  Date and time of the last update. e.g. 2020-08-27T00:00:00Z"
          },
          "categoryCharacteristics": {
            "type": "array",
            "description": "Required=false, A list of category characteristics.",
            "items": {
              "$ref": "#/components/schemas/CategoryCharacteristic"
            }
          }
        },
        "description": "The category resource is used to group product offerings, service and resource candidates in logical containers.Categories can contain other categories and/or product offerings, resource or service candidates."
      },
      "CategoryCharacteristic": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the characteristic."
          },
          "localizedName": {
            "type": "string",
            "description": "The localized name of the characteristic."
          },
          "valueType": {
            "type": "string",
            "description": "The value type of the characteristic."
          },
          "value": {
            "type": "array",
            "description": "The list of values for this characteristic.",
            "items": {
              "$ref": "#/components/schemas/CategoryCharacteristicValue"
            }
          }
        },
        "description": "A characteristic of a category, such as longDescription, iconUrl, rank, etc."
      },
      "CategoryCharacteristicValue": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The value of the characteristic."
          },
          "localizedValue": {
            "type": "string",
            "description": "The localized value of the characteristic."
          },
          "get_default": {
            "type": "boolean",
            "description": "Indicates if this value is the default."
          }
        },
        "description": "A value for a category characteristic, including the value, localized value, and default flag."
      },
      "CategoryRef": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true, The unique ID of the product offering category. e.g. c8f31d65-4eb5-4700-bc1b-f157bd17f195"
          },
          "name": {
            "type": "string",
            "description": "Required=true, The name of the product offering category. e.g. WBB_Plans",
            "enum": [
              "WBB_Plans"
            ]
          }
        },
        "description": "The category of productoffering related to"
      },
      "ProductOfferingRef": {
        "required": [
          "id",
          "name",
          "productOfferingType"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true,  The relevant Business Relationship unique identifier. e.g. 0b2a61d3-35a0-4cd0-bba8-1bafc0694fda"
          },
          "name": {
            "type": "string",
            "description": "Required=true, Business Relationship name. e.g. Compatible addons for the product. e.g. "
          },
          "href": {
            "type": "string",
            "description": "Required=true, Business Relationship type. The type of the relation by which the related product offering. e.g. https://att.com/​msapi/cpopoffer/v1/productOffering/7655"
          },
          "productOfferingType": {
            "type": "string",
            "description": "Required=true, Product Offering Type. The type of the product for which the offering requested for. e.g. Mobile_Device "
          }
        },
        "description": "Product Offering Reference"
      },
      "ProductOfferingPriceItem": {
        "type": "object",
        "properties": {
          "sku": {
            "type": "string"
          },
          "salePrice": {
            "type": "number"
          },
          "reasonCode": {
            "type": "string"
          }
        }
      },
      "ProductOfferingPriceRequest": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "channel": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "storeId": {
            "type": "string"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingPriceItem"
            }
          },
          "ban": {
            "type": "string"
          },
          "market": {
            "type": "string"
          },
          "activityDate": {
            "type": "string"
          },
          "subscribers": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "subscriberDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SubscriberDetail"
            }
          }
        }
      },
      "SubscriberDetail": {
        "type": "object",
        "properties": {
          "subscriber": {
            "type": "string"
          },
          "cancellationDate": {
            "type": "string"
          }
        }
      },
      "AdditionalQualificationCriteria": {
        "required": [
          "name",
          "value"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Required=true, The name of the additional qualification criteria. e.g. qualifierSkus"
          },
          "value": {
            "type": "array",
            "description": "Required=true, value of the  additional qualification criteria. e.g. List of qualifierSkus",
            "items": {
              "type": "string",
              "description": "Required=true, value of the  additional qualification criteria. e.g. List of qualifierSkus"
            }
          }
        },
        "description": "Holds characteristics with String name and List value, which cannot be accommodated in PromotionCharacteristic"
      },
      "AttachmentRefOrValue": {
        "required": [
          "attachmentType",
          "id",
          "name",
          "url"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true, Unique identifier for this particular attachment. e.g. 4aafacbd-11ff-4dc8-b445-305f2215715f"
          },
          "name": {
            "type": "string",
            "description": "Required=true, The name of the attachment. e.g. Moreabout5G"
          },
          "attachmentType": {
            "type": "string",
            "description": "Required=true, Attachment type such as video, picture. e.g. URL"
          },
          "url": {
            "type": "string",
            "description": "Required=true, Uniform Resource Locator, is a web page address (a subset of URI). e.g. /knowledgearticle/5Gbroadband"
          }
        },
        "description": "benefit item object"
      },
      "AttributeOperations": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "operationName": {
            "type": "string"
          }
        }
      },
      "BundledProdOfferOption": {
        "required": [
          "numberRelOfferDefault",
          "numberRelOfferLowerLimit",
          "numberRelOfferUpperLimit"
        ],
        "type": "object",
        "properties": {
          "numberRelOfferDefault": {
            "type": "integer",
            "description": "Required=true, default number of Related Offer Upper Limit. e.g. 1",
            "format": "int32"
          },
          "numberRelOfferLowerLimit": {
            "type": "integer",
            "description": "Required=true, number of Related Offer Lower Limit. e.g. 1",
            "format": "int32"
          },
          "numberRelOfferUpperLimit": {
            "type": "integer",
            "description": "Required=true, number of Related Offer Upper Limit. e.g. 1",
            "format": "int32"
          },
          "productOfferingPrice": {
            "type": "array",
            "description": "Required=false, itemPrice. e.g. Refer ProductOfferingPriceRefOrValue attributes and example values",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingPriceRefOrValue"
            }
          },
          "productOfferingTotalPrice": {
            "type": "array",
            "description": "Required=false, item TotalPrice. e.g. Refer ProductOfferingPriceRefOrValue attributes and example values",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingPriceRefOrValue"
            }
          }
        },
        "description": "The lower and upper limits for a product offering that can be purchased as part of the related bundled product offering. The values can range from 0 to unlimited."
      },
      "BundledProductOffering": {
        "required": [
          "description",
          "href",
          "id",
          "localizedName",
          "name",
          "productOfferingType",
          "productOfferingTypeGroup"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true, The unique ID of the bundled product offering. e.g. a002fb3e-991b-4189-aec6-faae3b27ec3e"
          },
          "name": {
            "type": "string",
            "description": "Required=true, The name of the bundled product offering. e.g. HD Streaming"
          },
          "localizedName": {
            "type": "string",
            "description": "Required=true, The localized name of the bundled product offering. e.g. HD Streaming"
          },
          "href": {
            "type": "string",
            "description": "Required=true, The link to the productoffering. e.g. https://att.com/msapi/cpopoffer/v1/product-offers/417df8e3-2026-455b-aa79-03d3545e7f6d?channel=SelfService"
          },
          "description": {
            "type": "string",
            "description": "Required=true, The description of the bundled product offering. e.g. With HD Streaming, you can stream videos in High Definition"
          },
          "productSku": {
            "type": "string",
            "description": "Required=false, The Product Sku id"
          },
          "default": {
            "type": "boolean",
            "description": "Required=false, Indicates whether the bundled product offering is selected by default when purchasing the bundle product offering. e.g. true"
          },
          "productOfferingType": {
            "type": "string",
            "description": "Required=true, The type of the product offering - can represent the LOB or other relevant types like shipping offer. e.g.WBB_Offer, WBB_Plan, Rented_Equipment",
            "enum": [
              "WBB_Offer",
              "WBB_Plan",
              "Rented_Equipment"
            ]
          },
          "productOfferingTypeGroup": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "description": "Required=true, The type group of the product offering. e.g. WBBOffer, WBBPlan, equipment",
            "enum": [
              "WBBPlan",
              "WBBOffer",
              "equipment"
            ]
          },
          "bundledProductOffering": {
            "type": "array",
            "description": "Required=false, The child bundle product offering. e.g. Refer bundledProductOffering attributes and example values",
            "items": {
              "$ref": "#/components/schemas/BundledProductOffering"
            }
          },
          "bundledProductOfferingOption": {
            "type": "array",
            "description": "Required=false, The upper and lower limits of the product offerings that can be purchased as part of the bundle product offering. e.g. Refer BundledProdOfferOption attributes and example values",
            "items": {
              "$ref": "#/components/schemas/BundledProdOfferOption"
            }
          },
          "bundledProductOfferingGroupOption": {
            "type": "array",
            "description": "Required=false, list of product BundledProductOfferingGroupOption Details.",
            "items": {
              "$ref": "#/components/schemas/BundledProductOfferingGroupOption"
            }
          },
          "productOfferingCharacteristic": {
            "type": "array",
            "description": "Required=false, The list of characteristics for the product offering. The type of the characteristic is determined by the related characteristic property entity. e.g.  Refer ProductOfferingCharacteristic model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingCharacteristic"
            }
          },
          "subscriberResults": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SubscriberResults"
            }
          },
          "substitutionAction": {
            "type": "string",
            "description": "Required=false, Action to add incompatible boosters"
          },
          "productOfferingPrice": {
            "type": "array",
            "description": "Required=false, The productoffer price. e.g. Refer ProductOfferingPriceRefOrValue model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingPriceRefOrValue"
            }
          },
          "installType": {
            "type": "string",
            "description": "Required=false, type of installation Eg: Self Installation/Tech Installation"
          },
          "productOfferingRelationship": {
            "type": "array",
            "description": "Required=false, The relevant Business Relationship. e.g. Refer ProductOfferingRelationship model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingRelationship"
            }
          },
          "isBundle": {
            "type": "boolean",
            "description": "Required=false, Indicates whether the bundled product offering represents a single product offering (false) or a bundle of product offerings (true). e.g. true"
          }
        },
        "description": "The relation between a bundle product offering entity and its bundled product offering entities"
      },
      "BundledProductOfferingGroupOption": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the bundled product offering option. e.g. HD Streaming"
          },
          "localizedName": {
            "type": "string",
            "description": "The localized name of the bundled product offering option. e.g. HD Streaming"
          },
          "description": {
            "type": "string",
            "description": "The description of bundled product offering option. e.g. With HD Streaming, you can stream videos in High Definition"
          },
          "groupOptionId": {
            "type": "string",
            "description": "Generated bundled product offering option id."
          },
          "bundledProductOffering": {
            "type": "array",
            "description": "The bundled product offerings included in this group option.",
            "items": {
              "$ref": "#/components/schemas/BundledProductOffering"
            }
          },
          "category": {
            "type": "array",
            "description": "Required=false, A reference to an category. e.g. Refer CategoryRef model for category attributes and example values",
            "items": {
              "$ref": "#/components/schemas/CategoryRef"
            }
          },
          "numberRelOfferLowerLimit": {
            "type": "string",
            "description": "The lower limit of the number of related offers that can be purchased as part of the bundle offering. e.g. 1"
          },
          "numberRelOfferUpperLimit": {
            "type": "string",
            "description": "The upper limit of the number of related offers that can be purchased as part of the bundle offering. e.g. 3"
          }
        },
        "description": "Required=false, list of product BundledProductOfferingGroupOption Details."
      },
      "Characteristic": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        }
      },
      "CharacteristicValue": {
        "required": [
          "entry",
          "localizedValue",
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "Required=true, The value of the characteristic. e.g. Pay_on_Bill"
          },
          "localizedValue": {
            "type": "string",
            "description": "Required=true, The localized product offering characteristic name. e.g. Pay on Bill"
          },
          "descriptiveCharacteristicsMetadata": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Metadata"
            }
          },
          "entry": {
            "type": "array",
            "description": "Required=true, Contains list of key-value pair.",
            "items": {
              "$ref": "#/components/schemas/KeyValuePair"
            }
          },
          "default": {
            "type": "boolean"
          }
        },
        "description": "The available values of the descriptive characteristic"
      },
      "CompatibleDevice": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Required=false, The value of name"
          },
          "variantGroup": {
            "type": "string",
            "description": "Required=false, The value of variantGroup"
          },
          "id": {
            "type": "string",
            "description": "Required=false, The ID of the variant group offerings. e.g. 135b1da7-e54f-477a-bd14-a5505eddb20c"
          },
          "variantCharacteristics": {
            "type": "array",
            "description": "Required=true, The varient characteristics. e.g. The reference to the list of VariantCharacteristics objects",
            "items": {
              "$ref": "#/components/schemas/VariantCharacteristics"
            }
          }
        },
        "description": "The available values of Compatible Devices"
      },
      "ComponentOperations": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "operationName": {
            "type": "string"
          }
        }
      },
      "Constraint": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "characteristic": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Characteristic"
            }
          }
        },
        "description": "The Constraint resource represents a policy/rule applied to ProductOfferingPrice"
      },
      "ImmediatePayOption": {
        "type": "object",
        "properties": {
          "payOption": {
            "type": "string",
            "description": "The immediate pay option: <ul> <li> *MUST* - The price must be paid immediately <li> *MAY* - The price might be paid immediately </ul> "
          },
          "payAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "minPayAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "payImmediately": {
            "type": "boolean",
            "description": "Indicates whether the prcie included in the immediate payment. If the pay option is set to MUST, this indication is set to true. If the pay option is set to MAY, this indication is set to either true or false based on a customer decission. "
          }
        },
        "description": "The payment options for the product offering price payment. The payment options can indicate whether the price must or might be paid immediatelly. In addition, the payment options include an indication whether the price should be included in the immediate payment or not. If the payment option is set to must, this indication is set to true. Otherwise, if the payment option is set to might, the indication is set to either true or false based on a customer decission. "
      },
      "InstallmentCharacterstics": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "valueType": {
            "type": "string"
          }
        }
      },
      "InstallmentOption": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The identifier of the installment option "
          },
          "installmentOption": {
            "type": "string",
            "description": "Indicates if the installment option is optional / mandatory "
          },
          "numberOfInstallments": {
            "type": "integer",
            "description": "The number of installments ",
            "format": "int32"
          },
          "minNumberOfInstallments": {
            "type": "integer",
            "description": "The minimal number of installments ",
            "format": "int32"
          },
          "maxNumberOfInstallments": {
            "type": "integer",
            "description": "The maximal number of installments ",
            "format": "int32"
          },
          "defaultNumberOfInstallments": {
            "type": "integer",
            "description": "The number of installments ",
            "format": "int32"
          },
          "downPayment": {
            "type": "number"
          },
          "amount": {
            "type": "number"
          },
          "unit": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "commitmentTerm": {
            "type": "string"
          },
          "commitmentTermId": {
            "type": "string"
          },
          "monthlyNextUpChg": {
            "type": "number"
          },
          "installmentCharacterstics": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InstallmentCharacterstics"
            }
          }
        },
        "description": "Represents an installment option "
      },
      "KeyValuePair": {
        "required": [
          "key",
          "value"
        ],
        "type": "object",
        "properties": {
          "key": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=true, key of property like cms key e.g. masterImageUrl",
            "enum": [
              "billCodeContentURL",
              "masterImageUrl"
            ]
          },
          "value": {
            "minLength": 1,
            "type": "string",
            "description": "Required=true, value of generic object like value for a cms property. e.g./idpassets/global/devices/phones/samsung/samsung-galaxy-note20-5g/defaultimage/mystic-gray-hero-zoom.png"
          }
        },
        "description": "Generic object with key and value information"
      },
      "Metadata": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the metadata "
          },
          "value": {
            "type": "string",
            "description": "Value of the metadata "
          },
          "metadataType": {
            "type": "string",
            "description": "Type of the metadata "
          }
        },
        "description": "Catalog and operational metadata "
      },
      "Money": {
        "required": [
          "unit",
          "value"
        ],
        "type": "object",
        "properties": {
          "unit": {
            "type": "string",
            "description": "Required=true, The unit of the price. e.g. USD"
          },
          "value": {
            "type": "number",
            "description": "Required=true, Price value. e.g. 10"
          }
        },
        "description": "Price Amount"
      },
      "NameValuePair": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        },
        "description": "extensions of the related party "
      },
      "OMSReqResComponents": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "adminDisplay": {
            "type": "string"
          },
          "componentCode": {
            "type": "string"
          },
          "componentPath": {
            "type": "string"
          },
          "componentMapRequired": {
            "type": "string"
          },
          "componentOperations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ComponentOperations"
            }
          },
          "omsAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OmsAttributes"
            }
          }
        },
        "description": "Required=false, omsreqrescomponents"
      },
      "OmsAttributes": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "adminDisplay": {
            "type": "string"
          },
          "attributeCode": {
            "type": "string"
          },
          "attributeValue": {
            "type": "string"
          },
          "attributeOperations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttributeOperations"
            }
          }
        }
      },
      "OrderItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the order item "
          },
          "action": {
            "type": "string",
            "description": "Action applied to the order item (for example - add, suspend, resume, terminate, and so on). If there are multiple actions, a semicolon (;) is used as the delimiter. "
          },
          "state": {
            "type": "string",
            "description": "State of the order item "
          },
          "quantity": {
            "type": "integer",
            "description": "Quantity of the order item. This property is relevant only for the top-most non-serialized order items. ",
            "format": "int32"
          },
          "readOnly": {
            "type": "boolean",
            "description": "Indicates whether the order item can be reconfigured "
          },
          "completionDate": {
            "type": "string",
            "description": "Date on which the order item was completed "
          },
          "requestedStartDate": {
            "type": "string",
            "description": "Date on which the order item was requested to be started "
          },
          "requestedCompletionDate": {
            "type": "string",
            "description": "Date on which the order item was requested to be completed "
          },
          "expectedCompletionDate": {
            "type": "string",
            "description": "Date on which the order item is expected to be completed "
          },
          "retroactiveChangeDate": {
            "type": "string",
            "description": "Past date of a retroactive change performed on the order item "
          },
          "creationDate": {
            "type": "string",
            "description": "Item creation date  "
          },
          "itemPrice": {
            "type": "array",
            "description": "Price of the order item ",
            "items": {
              "$ref": "#/components/schemas/OrderPrice"
            }
          },
          "itemTotalPrice": {
            "type": "array",
            "description": "Total price of the order item ",
            "items": {
              "$ref": "#/components/schemas/OrderPrice"
            }
          },
          "orderItemRelationship": {
            "type": "array",
            "description": "Relationship between order items ",
            "items": {
              "$ref": "#/components/schemas/OrderItemRelationship"
            }
          },
          "productOffering": {
            "$ref": "#/components/schemas/ProductOfferingRef"
          },
          "product": {
            "$ref": "#/components/schemas/Product"
          },
          "billingAccount": {
            "$ref": "#/components/schemas/BillingAccountRef"
          },
          "appointment": {
            "$ref": "#/components/schemas/AppointmentRef"
          },
          "orderItem": {
            "type": "array",
            "description": "List of order items ",
            "items": {
              "$ref": "#/components/schemas/OrderItem"
            }
          },
          "productOfferingGroupOption": {
            "$ref": "#/components/schemas/ProductOfferingGroupOption"
          },
          "itemTerm": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderTerm"
            }
          },
          "modifyReason": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModifyReason"
            }
          },
          "nextAction": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NextAction"
            }
          },
          "payment": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentRef"
            }
          },
          "metadata": {
            "type": "array",
            "description": "Product offering metadata ",
            "items": {
              "$ref": "#/components/schemas/Metadata"
            }
          },
          "relatedImmediatePromotion": {
            "type": "array",
            "description": "List of immediate promotions related to the order item ",
            "items": {
              "$ref": "#/components/schemas/RelatedImmediatePromotion"
            }
          },
          "stock": {
            "type": "array",
            "description": "List of stock items ",
            "items": {
              "$ref": "#/components/schemas/StockItem"
            }
          },
          "stockReservation": {
            "type": "array",
            "description": "List of stock reservations ",
            "items": {
              "$ref": "#/components/schemas/ProductStockReservationRef"
            }
          },
          "characteristic": {
            "type": "array",
            "description": "Characteristics of the product offering ",
            "items": {
              "$ref": "#/components/schemas/ProductCharacteristic"
            }
          },
          "externalIdentifier": {
            "type": "array",
            "description": "List of external identifiers related to the order item ",
            "items": {
              "$ref": "#/components/schemas/ExternalIdentifier"
            }
          },
          "note": {
            "type": "array",
            "description": "Extra information about the order item ",
            "items": {
              "$ref": "#/components/schemas/Note"
            }
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "description": "An identified part of the product order. A product order is decomposed into one or more order items. "
      },
      "POPAlteration": {
        "required": [
          "chargeType",
          "price",
          "priceType"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Required=false, The name of the price alteration. Returned in response of productofferingprice e.g. Discount"
          },
          "priceType": {
            "type": "string",
            "description": "Required=true, The type of the price - recurring, one time, or usage. e.g. OC, RC",
            "enum": [
              "OC",
              "RC"
            ]
          },
          "chargeType": {
            "type": "string",
            "description": "Required=true, The charge type that the price alteration represents. The supported values are:\r\ndebit\r\ndiscount\r\ncredit. e.g. refer description",
            "enum": [
              "debit",
              "credit",
              "discount"
            ]
          },
          "immediatePromotionId": {
            "type": "string",
            "description": "Required=false, The ID of the immediate promotion instance. Returned in response of productofferingprice e.g. 943200e2-00da-4555-8f35-a1141683a866"
          },
          "price": {
            "$ref": "#/components/schemas/ProductPriceValue"
          },
          "discountValueType": {
            "type": "string"
          },
          "alterationType": {
            "type": "string"
          },
          "potentialPromotionId": {
            "type": "string"
          },
          "alterationApplyOrder": {
            "type": "integer",
            "format": "int32"
          },
          "offerType": {
            "type": "string"
          }
        },
        "description": "The altered price to be applied for the product offering"
      },
      "Parameter": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Required=false, Parameter name"
          },
          "value": {
            "type": "array",
            "description": "Required=false, Parameter value",
            "items": {
              "type": "string",
              "description": "Required=false, Parameter value"
            }
          }
        },
        "description": "ProductOffering PromotionQualificationMessage promotion Parameter object."
      },
      "ParentProdOfferGroupOption": {
        "type": "object",
        "properties": {
          "groupOptionId": {
            "type": "string",
            "description": "The ID of the group option "
          }
        },
        "description": "The list of ???Offer group id??? that this offer is contained in            "
      },
      "PotentialBenefitItem": {
        "type": "object",
        "properties": {
          "productOfferingId": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "potentialBenefitType": {
            "type": "string"
          },
          "deviceCategory": {
            "type": "string"
          }
        },
        "description": "potential benefit item for qualifying promotion"
      },
      "PotentialPromotion": {
        "required": [
          "id",
          "promotion",
          "status"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true, The instance ID of the immediate promotion. e.g. 1cf3cb2b-e47e-470d-9a17-8c9615bde6e2"
          },
          "status": {
            "type": "string",
            "description": "Required=true, The status of the qualified promotion. The status can have the following values:\r\n'add' - For a new immediate promotion\r\n'keep' - For an existing product promotion that remains as the result of reevaluation\r\n'revoke' - For an existing product promotion that is revoked as the result of reevaluation\r\n'update' - For an existing product promotion that is updated as the result of reevaluation (meaning one of the existing trigger or benefit items is added or removed). e.g. refer description",
            "enum": [
              "add",
              "keep",
              "revoke",
              "update"
            ]
          },
          "promotion": {
            "$ref": "#/components/schemas/Promotion"
          },
          "itemQualificationType": {
            "type": "string"
          },
          "discount": {
            "type": "number"
          },
          "discountType": {
            "type": "string"
          },
          "marketingContent": {
            "type": "string"
          },
          "isOfferTrayEnabled": {
            "type": "boolean"
          },
          "triggerItem": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TriggerItem"
            }
          },
          "benefitItem": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BenefitItem"
            }
          }
        },
        "description": "ProductOffering potential promotion object. TMF+"
      },
      "ProductOffering": {
        "required": [
          "href",
          "id",
          "isBundle",
          "localizedName",
          "mustBeBundled",
          "name",
          "productOfferingType",
          "productOfferingTypeGroup",
          "productOfferingTypeId",
          "validFor"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 100,
            "minLength": 10,
            "type": "string",
            "description": "Required=true, The productoffering unique id. e.g. 52165303-5d47-4827-a51c-f7ab08570210"
          },
          "name": {
            "type": "string",
            "description": "Required=true, The name or text id of the product offering. e.g. Unlimited 5G WBB Bundle"
          },
          "localizedName": {
            "type": "string",
            "description": "Required=true, The localized name of the product offering. e.g. Unlimited 5G WBB Bundle"
          },
          "description": {
            "type": "string",
            "description": "Required=false, The localized description of the product offering. e.g. Unlimited 5G WBB Bundle"
          },
          "href": {
            "type": "string",
            "description": "Required=true, The link to the productoffering. e.g. https://att.com/​msapi/cpopoffer/v1/product-offers/417df8e3-2026-455b-aa79-03d3545e7f6d?channel=SelfService"
          },
          "productSku": {
            "type": "string",
            "description": "Required=false, The Product Sku id"
          },
          "productOfferingType": {
            "type": "string",
            "description": "Required=true, The type of the product offering - can represent the LOB or other relevant types like shipping offer. e.g.WBB_Offer, WBB_Plan, Rented_Equipment",
            "enum": [
              "WBB_Offer",
              "WBB_Plan",
              "Rented_Equipment"
            ]
          },
          "productOfferingTypeGroup": {
            "maxLength": 100,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, The type group of the product offering. The values are used as defined from catalog e.g. WBBOffer",
            "enum": [
              "WBBOffer",
              "WBBPlan",
              "equipment"
            ]
          },
          "mustBeBundled": {
            "type": "boolean",
            "description": "Required=true, Determines if the product offering can be sold as a standalone (false), or available only as part of a bundle or bundles (true). e.g. false"
          },
          "isBundle": {
            "type": "boolean",
            "description": "Required=true, Indicates whether the product offering represents a single product offering (false) or a bundle of product offerings (true). e.g. true"
          },
          "valueRank": {
            "type": "integer",
            "description": "Required=false, valueRank",
            "format": "int32"
          },
          "category": {
            "type": "array",
            "description": "Required=false, A reference to an category. e.g. Refer CategoryRef model for category attributes and example values",
            "items": {
              "$ref": "#/components/schemas/CategoryRef"
            }
          },
          "variantGroup": {
            "$ref": "#/components/schemas/VariantGroup"
          },
          "bundledProductOffering": {
            "type": "array",
            "description": "Required=false, The relation between a bundle product offering entity and its bundled product offering entities. e.g. Refer BundledProductOffering model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/BundledProductOffering"
            }
          },
          "productOfferingCharacteristic": {
            "type": "array",
            "description": "Required=false, The list of characteristics for the product offering. The type of the characteristic is determined by the related characteristic property entity. e.g.  Refer ProductOfferingCharacteristic model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingCharacteristic"
            }
          },
          "immediatePromotion": {
            "type": "array",
            "description": "Required=false, The reference to the promotion object. e.g. Refer ImmediatePromotion model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/ImmediatePromotion"
            }
          },
          "productOfferingRelationship": {
            "type": "array",
            "description": "Required=false, The relevant Business Relationship. e.g. Refer ProductOfferingRelationship model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingRelationship"
            }
          },
          "validFor": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "productOfferingTotalPrice": {
            "type": "array",
            "description": "Required=false, The productoffer total price. e.g. Refer ProductOfferingPriceRefOrValue model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingPriceRefOrValue"
            }
          },
          "productOfferingPrice": {
            "type": "array",
            "description": "Required=false, The productoffer price. e.g. Refer ProductOfferingPriceRefOrValue model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingPriceRefOrValue"
            }
          },
          "cmsInfo": {
            "type": "array",
            "description": "Required=false, list of cmsInfo Details. This is only applicable for wirelesss devices and accessories.This is returned only in lookup api where productOfferingIDs is/are provided in request. eligibility call will not return cmsInfo.",
            "items": {
              "$ref": "#/components/schemas/KeyValuePair"
            }
          },
          "productOfferingTypeId": {
            "maxLength": 100,
            "minLength": 10,
            "type": "string",
            "description": "Required=true, The productofferingTypeID unique id. e.g. 52165303-5d47-4827-a51c-f7ab08570210"
          },
          "compatibleDevices": {
            "type": "array",
            "description": "Required=false, A reference to  compatibleDevice",
            "items": {
              "$ref": "#/components/schemas/CompatibleDevice"
            }
          },
          "promotionQualificationMessage": {
            "type": "array",
            "description": "Required=false, The reference to the promotionQualificationMessage object. e.g. Refer ImmediatePromotion model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/PromotionQualificationMessage"
            }
          },
          "orderItem": {
            "type": "array",
            "description": "Required=false, list of product orderItem Details. e.g. Refer OrderItem model for atttributes and example values",
            "items": {
              "$ref": "#/components/schemas/OrderItem"
            }
          },
          "bundledProductOfferingGroupOption": {
            "type": "array",
            "description": "Required=false, list of product BundledProductOfferingGroupOption Details.",
            "items": {
              "$ref": "#/components/schemas/BundledProductOfferingGroupOption"
            }
          },
          "attachment": {
            "type": "array",
            "description": "Required=false, An attachment complements the description of an element, for example through a document, a video, a picture. e.g. Refer AttachmentRefOrValue model for attributes and example values",
            "items": {
              "$ref": "#/components/schemas/AttachmentRefOrValue"
            }
          },
          "offerClassification": {
            "type": "string",
            "description": "Required=false, offerClassification, eg: mobileOffer"
          },
          "isEnabledBy": {
            "type": "boolean",
            "description": "Required=false, isEnabledBy"
          },
          "primary": {
            "type": "boolean",
            "description": "Required=false, primary"
          },
          "serialized": {
            "type": "boolean",
            "description": "Required=false, serialized"
          },
          "isRestricted": {
            "type": "boolean",
            "description": "Required=false, isRestricted"
          },
          "parentProdOfferGroupOption": {
            "type": "array",
            "description": "Required=false, parentProdOfferGroupOption",
            "items": {
              "$ref": "#/components/schemas/ParentProdOfferGroupOption"
            }
          },
          "potentialPromotion": {
            "type": "array",
            "description": "Required=false, parentProdOfferGroupOption",
            "items": {
              "$ref": "#/components/schemas/PotentialPromotion"
            }
          },
          "omsreqrescomponents": {
            "type": "array",
            "description": "Required=false, omsreqrescomponents",
            "items": {
              "$ref": "#/components/schemas/OMSReqResComponents"
            }
          },
          "metadata": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Metadata"
            }
          },
          "productOfferingGroup": {
            "type": "string",
            "description": "productOfferingGroup"
          },
          "relatedParty": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RelatedPartyRef"
            }
          },
          "bundledProductOfferingAddonOption": {
            "type": "array",
            "description": "bundledProductOfferingAddonOption",
            "items": {
              "$ref": "#/components/schemas/ProductOffering"
            }
          }
        },
        "description": "Represents entities that are orderable from the provider of the catalog, this resource includes pricing information."
      },
      "ProductOfferingCharacteristic": {
        "required": [
          "localizedName",
          "name",
          "valueType"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Required=true, The text ID of the product offering characteristic. e.g. Included_Services",
            "enum": [
              "Included_Services",
              "Payment_Type",
              "Payment_Method",
              "Streaming"
            ]
          },
          "localizedName": {
            "type": "string",
            "description": "Required=true, The localized name of the product offering characteristic. e.g. Included Services"
          },
          "valueType": {
            "type": "string",
            "description": "Required=true, The value type of the characteristic. e.g. String"
          },
          "value": {
            "type": "array",
            "description": "Required=false, The available values under the characteristic. e.g. Refer CharacteristicValue attributes and example values",
            "items": {
              "$ref": "#/components/schemas/CharacteristicValue"
            }
          },
          "productSpecification": {
            "$ref": "#/components/schemas/ProductSpecificationRef"
          },
          "characteristicsMetadata": {
            "type": "array",
            "description": "Required=false, The metadata describing the characteristic. e.g. Refer Metadata attributes and example values",
            "items": {
              "$ref": "#/components/schemas/Metadata"
            }
          }
        },
        "description": "The list of the descriptive characteristics for the Discovery flows derived from the product offering and included in the product specification (if exists)"
      },
      "ProductOfferingError": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "productOfferingId": {
            "type": "string"
          }
        }
      },
      "ProductOfferingPriceRefOrValue": {
        "required": [
          "finalPrice",
          "price",
          "priceType"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Required=false, Indicates the name of the price or fee. e.g. Service Price, Fee for Texas"
          },
          "id": {
            "type": "string",
            "description": "Required=false, Indicates the offering id of the price"
          },
          "priceCategory": {
            "type": "string",
            "description": "Required=false, Indicates the category of the price. e.g. serviceRC, Fee"
          },
          "priceType": {
            "type": "string",
            "description": "Required=true, The type of the price - recurring, one time, or usage. e.g. OC, RC",
            "enum": [
              "OC",
              "RC"
            ]
          },
          "recurringChargePeriod": {
            "type": "string",
            "description": "Required=false, The period to repeat the application of the price, such as month, week, and so on. e.g. Month",
            "enum": [
              "month",
              "week"
            ]
          },
          "recurringChargePeriodLength": {
            "type": "integer",
            "description": "Required=false, The period length of the recurring charge. e.g. 1",
            "format": "int32"
          },
          "role": {
            "type": "string",
            "description": "Required=false, The role of the price, for example, price, bundle price alteration, and so on. e.g. Price, Bundle Price Alteration",
            "enum": [
              "Bundle Price Alteration",
              "Price"
            ]
          },
          "price": {
            "$ref": "#/components/schemas/ProductPriceValue"
          },
          "finalPrice": {
            "$ref": "#/components/schemas/ProductPriceValue"
          },
          "standalonePrice": {
            "$ref": "#/components/schemas/ProductPriceValue"
          },
          "priceAlteration": {
            "type": "array",
            "description": "Required=false, The altered price to be applied for the product offering. e.g. Refer POPAlteration attributes and example values",
            "items": {
              "$ref": "#/components/schemas/POPAlteration"
            }
          },
          "productOfferingPrice": {
            "$ref": "#/components/schemas/ProductOfferingPriceRef"
          },
          "periodCoverage": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "baseFullPrice": {
            "$ref": "#/components/schemas/ProductPriceValue"
          },
          "taxIncluded": {
            "type": "string",
            "description": "Required=false, Indicates if the price is defined in the catalog one as tax included or as tax excluded. e.g. Included, Excluded"
          },
          "immediatePayOption": {
            "$ref": "#/components/schemas/ImmediatePayOption"
          },
          "installmentOption": {
            "$ref": "#/components/schemas/InstallmentOption"
          },
          "upgradeOption": {
            "$ref": "#/components/schemas/UpgradeOption"
          },
          "customerGroup": {
            "type": "string"
          },
          "eligibleProductPromotions": {
            "type": "array",
            "description": "Required=false, The eligible product promotions to be applied for the product offering. e.g. Refer POPAlteration attributes and example values",
            "items": {
              "$ref": "#/components/schemas/POPAlteration"
            }
          },
          "promotionPriceOptions": {
            "type": "array",
            "description": "Required=false, The promotion price options. e.g. Refer PromotionPriceOption attributes and example values",
            "items": {
              "$ref": "#/components/schemas/PromotionPriceOption"
            }
          },
          "constraint": {
            "type": "array",
            "description": "Required=false, The Constraint resource represents a policy/rule applied to ProductOfferingPrice.",
            "items": {
              "$ref": "#/components/schemas/Constraint"
            }
          }
        },
        "description": "ProductOffering DiscoveryPrice"
      },
      "ProductOfferingRelationship": {
        "required": [
          "id",
          "name",
          "relationshipType",
          "role"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true,  The relevant Business Relationship unique identifier. e.g. 0b2a61d3-35a0-4cd0-bba8-1bafc0694fda"
          },
          "name": {
            "type": "string",
            "description": "Required=true, Business Relationship name. e.g. Compatible addons for the product. e.g. Tier_Plan_AddOns_Relation,Replace_between_Tiers_Offers"
          },
          "relationshipType": {
            "type": "string",
            "description": "Required=true, Business Relationship type. The type of the relation by which the related product offering. e.g. commercialRelation",
            "enum": [
              "commercialRelation",
              "replaceOffer",
              "compatibleTo",
              "compatibleWith"
            ]
          },
          "role": {
            "type": "string",
            "description": "Required=true, Business Relationship role. e.g. ADDON",
            "enum": [
              "addOn",
              "replaceTo"
            ]
          },
          "productOfferingType": {
            "type": "string",
            "description": "Required=false, The type of the product offering - can represent the LOB or other relevant types like shipping offer. e.g.WBB_Offer"
          },
          "category": {
            "$ref": "#/components/schemas/CategoryRef"
          }
        },
        "description": "Product Offering Relationship"
      },
      "ProductOfferingResponse": {
        "type": "object",
        "properties": {
          "productOfferings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductOffering"
            }
          },
          "productOfferingsError": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductOfferingError"
            }
          },
          "responseHeaders": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        }
      },
      "ProductPriceValue": {
        "type": "object",
        "properties": {
          "dutyFreeAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "taxIncludedAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "marketingAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "discountPercentage": {
            "type": "number",
            "description": "Required=false, The discount percentage",
            "format": "float"
          }
        },
        "description": "The price of current catalog item. It is set to null if the price record is missing or if there is any exception."
      },
      "ProductSpecificationRef": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the product specification "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the product specification "
          },
          "name": {
            "type": "string",
            "description": "Name of the product specification "
          },
          "productSpecificationType": {
            "type": "string",
            "description": "Type of the product specification "
          },
          "productSpecificationTypeId": {
            "type": "string",
            "description": "Type of the product specification "
          }
        },
        "description": "Detailed information of a tangible or intangible object that is made available externally in the form of a product offering to customers or other parties playing a party role "
      },
      "PromotionPriceOption": {
        "type": "object",
        "properties": {
          "promoPrice": {
            "type": "number",
            "description": "Required=false, The promotional price"
          },
          "promoReferences": {
            "type": "array",
            "description": "Required=false, List of promotion references",
            "items": {
              "type": "string",
              "description": "Required=false, List of promotion references"
            }
          },
          "combinedOfferType": {
            "type": "string",
            "description": "Required=false, The combined offer type"
          },
          "alterationApplyOrder": {
            "type": "integer",
            "description": "Required=false, The order in which alterations are applied",
            "format": "int32"
          }
        },
        "description": "Promotion price option with pricing and offer details"
      },
      "PromotionQualificationMessage": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "Required=false, Promotion Qualifiation message"
          },
          "type": {
            "type": "string",
            "description": "Required=false, type of promotion"
          },
          "parameter": {
            "type": "array",
            "description": "Required=false, qualified manual promotion parameters",
            "items": {
              "$ref": "#/components/schemas/Parameter"
            }
          }
        },
        "description": "ProductOffering PromotionQualificationMessage promotion object."
      },
      "SubscriberResults": {
        "required": [
          "entry"
        ],
        "type": "object",
        "properties": {
          "entry": {
            "type": "array",
            "description": "Required=true, Contains list of key-value pair for the reason codes.",
            "items": {
              "$ref": "#/components/schemas/KeyValuePair"
            }
          }
        }
      },
      "UpgradeOption": {
        "type": "object",
        "properties": {
          "upgradeOptionType": {
            "type": "string"
          },
          "amount": {
            "type": "number"
          }
        },
        "description": "Represents an upgrade option "
      },
      "VariantCharacteristics": {
        "required": [
          "localizedName",
          "name",
          "value",
          "valueType"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Required=true, The text ID of the product offering characteristic. e.g. Memory_Size",
            "enum": [
              "Memory_Size"
            ]
          },
          "localizedName": {
            "type": "string",
            "description": "Required=true, The localized name of the product offering characteristic. e.g. Memory_Size"
          },
          "valueType": {
            "type": "string",
            "description": "Required=true, The value type of the characteristic. e.g. String",
            "enum": [
              "String"
            ]
          },
          "value": {
            "type": "array",
            "description": "Required=true, The available values under the characteristic. e.g. The reference to the CharacteristicValue object",
            "items": {
              "$ref": "#/components/schemas/CharacteristicValue"
            }
          }
        },
        "description": "ProductOffering variant characteristics - The descriptive characteristics"
      },
      "VariantGroup": {
        "required": [
          "id",
          "localizedName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true, The ID of the variant group. e.g. iPhone_12_Pro_Max"
          },
          "localizedName": {
            "type": "string",
            "description": "Required=true, The localized name of the variant group. e.g. iPhone 12 Pro Max"
          },
          "localizedDescription": {
            "type": "string",
            "description": "Required=false, The localized description of the variant group. e.g. SmartPhones"
          },
          "variantGroupOfferings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/VariantGroupOfferings"
            }
          }
        },
        "description": "ProductOffering varient group"
      },
      "VariantGroupOfferings": {
        "required": [
          "id",
          "variantCharacteristics"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true, The ID of the variant group offerings. e.g. 135b1da7-e54f-477a-bd14-a5505eddb20c"
          },
          "variantCharacteristics": {
            "type": "array",
            "description": "Required=true, The varient characteristics. e.g. The reference to the list of VariantCharacteristics objects",
            "items": {
              "$ref": "#/components/schemas/VariantCharacteristics"
            }
          },
          "default": {
            "type": "boolean"
          }
        },
        "description": "The members of the variant group"
      },
      "PromotionRequest": {
        "type": "object",
        "properties": {
          "ban": {
            "type": "string"
          },
          "addressId": {
            "type": "string"
          },
          "channel": {
            "type": "string"
          },
          "selectedOffers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SelectedOffer"
            }
          }
        }
      },
      "SelectedOffer": {
        "type": "object",
        "properties": {
          "productOfferingId": {
            "type": "string"
          },
          "productOfferingType": {
            "type": "string"
          },
          "productOfferingTypeGroup": {
            "type": "string"
          },
          "action": {
            "type": "string"
          }
        }
      },
      "BaseIpUsageItem": {
        "type": "object",
        "properties": {
          "shortDisplayName": {
            "type": "string"
          },
          "productId": {
            "type": "string"
          },
          "childSkuId": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "productType": {
            "type": "string"
          },
          "usageType": {
            "type": "string"
          },
          "overageBucket": {
            "$ref": "#/components/schemas/OverageBucket"
          },
          "usageAllowance": {
            "$ref": "#/components/schemas/UsageAllowance"
          }
        }
      },
      "ChildSku": {
        "type": "object",
        "properties": {
          "childSkuId": {
            "type": "string",
            "description": "Child Sku Id"
          },
          "price": {
            "$ref": "#/components/schemas/Price"
          }
        },
        "description": "ChildSku"
      },
      "EdsAddonOfferResponse": {
        "type": "object",
        "properties": {
          "ipusageBoltonItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "equipmentOffer": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "installationOffers": {
            "$ref": "#/components/schemas/EdsInstall"
          },
          "ipOffers": {
            "$ref": "#/components/schemas/EdsIpOffer"
          },
          "iPUsageBoltonItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "internetBackup": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "wifiExtenderService": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "homeTechProtectionPlan": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "allFiProBundle": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "installationOffersAllfiProBundle": {
            "$ref": "#/components/schemas/EdsInstall"
          },
          "installationOffersWifiExtender": {
            "$ref": "#/components/schemas/EdsInstall"
          }
        }
      },
      "EdsBaseOffers": {
        "type": "object",
        "properties": {
          "offerId": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "offerDetails": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "rank": {
            "type": "number"
          },
          "fraoBenefitApplied": {
            "type": "boolean"
          },
          "shortDescription": {
            "type": "string"
          },
          "privateOfferApplied": {
            "type": "boolean"
          },
          "viceEligibleOffer": {
            "type": "boolean"
          },
          "shortDisplayName": {
            "type": "string"
          },
          "offerType": {
            "type": "string"
          },
          "gigaPowerOffer": {
            "type": "boolean"
          },
          "product": {
            "$ref": "#/components/schemas/EdsProduct"
          },
          "pricingLegal": {
            "$ref": "#/components/schemas/PricingLegal"
          },
          "ribbonTexts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GenericText"
            }
          },
          "features": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GenericText"
            }
          },
          "ipUsageItemDetails": {
            "$ref": "#/components/schemas/IpUsageItemDetails"
          },
          "segments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Segments"
            }
          }
        }
      },
      "EdsConfigDetails": {
        "type": "object",
        "properties": {
          "isLicenseRequired": {
            "type": "boolean"
          },
          "maxLicenseAllowed": {
            "type": "string"
          }
        }
      },
      "EdsInstall": {
        "type": "object",
        "properties": {
          "selfInstall": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "techInstall": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          }
        }
      },
      "EdsIpOffer": {
        "type": "object",
        "properties": {
          "staticIp": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "dynamicIp": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          }
        }
      },
      "EdsProduct": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string"
          },
          "productType": {
            "type": "string"
          },
          "longDescription": {
            "type": "string"
          },
          "imageName": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "pricePlanCode": {
            "type": "string"
          },
          "hsiaSwimlane": {
            "type": "number"
          },
          "losgId": {
            "type": "string"
          },
          "shortDisplayName": {
            "type": "string"
          },
          "broadbandTier": {
            "type": "number"
          },
          "bestValued": {
            "type": "boolean"
          },
          "tokens": {
            "type": "string"
          },
          "broadbandType": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "omsProductCode": {
            "type": "string"
          },
          "features": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GenericText"
            }
          },
          "applicableHighlights": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GenericText"
            }
          },
          "applicableFeatures": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GenericText"
            }
          },
          "downloadSpeed": {
            "$ref": "#/components/schemas/Speed"
          },
          "uploadSpeed": {
            "$ref": "#/components/schemas/Speed"
          },
          "childSkus": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ChildSku"
            }
          },
          "speedType": {
            "type": "string"
          },
          "unlimitedIPUsage": {
            "type": "string"
          },
          "usageType": {
            "type": "string"
          },
          "installType": {
            "type": "string"
          },
          "getiPQuantity": {
            "type": "string"
          },
          "numberOfIPs": {
            "type": "string"
          },
          "noOfWifiExtenders": {
            "type": "string"
          },
          "getiPAddressType": {
            "type": "string"
          },
          "rewards": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsRewards"
            }
          },
          "lineType": {
            "type": "string"
          },
          "productSubType": {
            "type": "string"
          },
          "secondaryProductId": {
            "type": "string"
          },
          "boostProductId": {
            "type": "string"
          },
          "boostOfferedType": {
            "type": "string"
          },
          "configDetails": {
            "$ref": "#/components/schemas/EdsConfigDetails"
          },
          "termLength": {
            "type": "string"
          },
          "hboMaxIncluded": {
            "type": "boolean"
          },
          "agentShortDisplayName": {
            "type": "string"
          },
          "agentDisplayRanking": {
            "type": "string"
          },
          "isEnrichedFiber": {
            "type": "boolean"
          },
          "isCurrentPlan": {
            "type": "boolean"
          },
          "bbFootPrint": {
            "type": "string"
          },
          "conflictingProducts": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "planEligibility": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "strategyId": {
            "type": "string"
          },
          "strategyName": {
            "type": "string"
          }
        }
      },
      "EdsResponseBundle": {
        "type": "object",
        "properties": {
          "baseOffer": {
            "$ref": "#/components/schemas/EdsBaseOffers"
          },
          "addonOfferResponse": {
            "$ref": "#/components/schemas/EdsAddonOfferResponse"
          },
          "populateRelationship": {
            "type": "boolean"
          },
          "voice": {
            "$ref": "#/components/schemas/EdsVoice"
          }
        }
      },
      "EdsRewards": {
        "type": "object",
        "properties": {
          "price": {
            "type": "string"
          },
          "onlineOnly": {
            "type": "boolean"
          },
          "displayName": {
            "type": "string"
          },
          "rewardType": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "longDescription": {
            "type": "string"
          },
          "agentDisplayRanking": {
            "type": "string"
          },
          "shortDisplayName": {
            "type": "string",
            "description": "Short Display Name"
          }
        }
      },
      "EdsVoice": {
        "type": "object",
        "properties": {
          "numOfVoipLinesAllowed": {
            "type": "string"
          },
          "primary": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "secondary": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "dirListing": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          },
          "businessAttendant": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdsBaseOffers"
            }
          }
        }
      },
      "GenericText": {
        "type": "object",
        "properties": {
          "rank": {
            "type": "number"
          },
          "id": {
            "type": "string"
          },
          "text": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        }
      },
      "IpUsageItemDetails": {
        "type": "object",
        "properties": {
          "unlimitedIPUsage": {
            "type": "boolean"
          },
          "baseIpUsageItem": {
            "$ref": "#/components/schemas/BaseIpUsageItem"
          }
        }
      },
      "OverageBucket": {
        "type": "object",
        "properties": {
          "ratePerBucket": {
            "type": "number"
          },
          "bucketSizeUom": {
            "type": "string"
          },
          "maxChargePerBillCycle": {
            "type": "number"
          },
          "bucketSize": {
            "type": "number"
          }
        }
      },
      "PricingLegal": {
        "type": "object",
        "properties": {
          "autoPayEbillFlag": {
            "type": "boolean"
          },
          "futurePriceText": {
            "type": "string"
          },
          "introPriceDuration": {
            "type": "number"
          },
          "futurePrice": {
            "type": "number"
          }
        }
      },
      "Speed": {
        "type": "object",
        "properties": {
          "uom": {
            "type": "string"
          },
          "speed": {
            "type": "number"
          }
        }
      },
      "UsageAllowance": {
        "type": "object",
        "properties": {
          "uom": {
            "type": "string"
          },
          "size": {
            "type": "number"
          }
        }
      },
      "AddressCharacteristic": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        }
      },
      "ExtenderRecommenderDetails": {
        "type": "object",
        "properties": {
          "extenderNeeded": {
            "type": "integer",
            "format": "int32"
          },
          "activeExtender": {
            "type": "integer",
            "format": "int32"
          },
          "inactiveExtender": {
            "type": "integer",
            "format": "int32"
          },
          "extenderRecommendation": {
            "type": "integer",
            "format": "int32"
          },
          "extenderRecommended": {
            "type": "boolean"
          }
        }
      },
      "GeographicAddress": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "categories": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "priceStrategy": {
            "$ref": "#/components/schemas/PriceStrategy"
          },
          "characteristic": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AddressCharacteristic"
            }
          },
          "code": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "postcode": {
            "type": "string"
          },
          "postcodeExtension": {
            "type": "string"
          },
          "rateZoneBandCode": {
            "type": "string"
          },
          "rateZone": {
            "type": "string"
          },
          "extenderRecommenderDetails": {
            "$ref": "#/components/schemas/ExtenderRecommenderDetails"
          }
        }
      },
      "PriceStrategy": {
        "type": "object",
        "properties": {
          "strategyId": {
            "type": "string"
          },
          "priceLock": {
            "type": "string"
          },
          "strategyName": {
            "type": "string"
          },
          "contractStartDate": {
            "type": "string"
          },
          "greenDate": {
            "type": "string"
          },
          "priceLockTerm": {
            "type": "string"
          },
          "priceLockEndDate": {
            "type": "string"
          }
        }
      },
      "GetEndpointsCharacteristics": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string"
          },
          "atgSkuIds": {
            "type": "string"
          },
          "uniqueUrlName": {
            "type": "string"
          },
          "imeiType": {
            "type": "string"
          },
          "skuId": {
            "type": "string"
          },
          "edModel": {
            "type": "string"
          },
          "billingCodes": {
            "type": "string"
          },
          "unifiedGuidanceTransactionId": {
            "type": "string"
          },
          "deviceType": {
            "type": "string"
          },
          "productFamilyGroup": {
            "type": "boolean"
          },
          "isByod": {
            "type": "boolean"
          },
          "specialSvc": {
            "type": "string"
          },
          "allowExpired": {
            "type": "boolean"
          },
          "destinationCode": {
            "type": "string"
          },
          "voluntaryDownPayment": {
            "type": "number",
            "format": "double"
          },
          "multiline": {
            "type": "string"
          },
          "mode": {
            "type": "string"
          }
        }
      },
      "AffinityTag": {
        "type": "object",
        "properties": {
          "category": {
            "$ref": "#/components/schemas/AffinityTagCategory"
          },
          "subCategory1": {
            "$ref": "#/components/schemas/AffinityTagCategory"
          },
          "subCategory2": {
            "$ref": "#/components/schemas/AffinityTagCategory"
          },
          "subCategory3": {
            "$ref": "#/components/schemas/AffinityTagCategory"
          },
          "subCategory4": {
            "$ref": "#/components/schemas/AffinityTagCategory"
          }
        }
      },
      "AffinityTagCategory": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string"
          },
          "uid": {
            "type": "string"
          }
        }
      },
      "CpopProductsInContext": {
        "type": "object",
        "properties": {
          "productType": {
            "type": "string"
          },
          "key": {
            "type": "string"
          },
          "billingCode": {
            "type": "string"
          },
          "inCart": {
            "type": "boolean"
          },
          "sku": {
            "type": "string"
          },
          "edModel": {
            "type": "string"
          }
        }
      },
      "Device": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "sku": {
            "type": "string"
          },
          "deviceModel": {
            "type": "string"
          }
        }
      },
      "FanDiscount": {
        "type": "object",
        "properties": {
          "discountType": {
            "type": "string"
          },
          "discountVal": {
            "$ref": "#/components/schemas/FanDiscountValue"
          }
        }
      },
      "FanDiscountDetails": {
        "type": "object",
        "properties": {
          "discounts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FanDiscount"
            }
          },
          "mrcModifier": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "activationFeeWaiverFlag": {
            "type": "boolean"
          },
          "upgradeFeeWaiverFlag": {
            "type": "boolean"
          },
          "blockIruGlobalPromos": {
            "type": "boolean"
          },
          "blockConsumerGlobalPromos": {
            "type": "boolean"
          },
          "affinityTag": {
            "$ref": "#/components/schemas/AffinityTag"
          }
        }
      },
      "FanDiscountValue": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "string"
          },
          "amountType": {
            "type": "string"
          }
        }
      },
      "FanProfileContent": {
        "type": "object",
        "properties": {
          "foundationAccNumber": {
            "type": "string"
          },
          "contractType": {
            "type": "string"
          },
          "fanFriendlyName": {
            "type": "string"
          },
          "discountDetails": {
            "$ref": "#/components/schemas/FanDiscountDetails"
          }
        }
      },
      "PrePopulatedCustomerData": {
        "type": "object",
        "properties": {
          "customerContext": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerContext"
            }
          },
          "location": {
            "$ref": "#/components/schemas/Location"
          },
          "productsInContext": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CpopProductsInContext"
            }
          },
          "existingProductOnAccount": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "subscriberPromotionsMap": {
            "type": "object",
            "additionalProperties": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          "installmentSubscriberMap": {
            "type": "object",
            "additionalProperties": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        }
      },
      "Subscriber": {
        "type": "object",
        "properties": {
          "subscriberNumber": {
            "type": "string"
          },
          "subscriberStatus": {
            "type": "string"
          },
          "primary": {
            "type": "boolean"
          },
          "groupType": {
            "type": "string"
          },
          "groupId": {
            "type": "string"
          },
          "ratePlanCode": {
            "type": "string"
          },
          "deviceDetailsInfo": {
            "$ref": "#/components/schemas/DeviceDetailsInfo"
          },
          "device": {
            "$ref": "#/components/schemas/Device"
          },
          "socs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Soc"
            }
          },
          "sdgSocCode": {
            "type": "string"
          },
          "sdfSocCode": {
            "type": "string"
          },
          "tier": {
            "type": "string"
          },
          "paymentReasonCode": {
            "type": "string"
          },
          "subscriberActivationDate": {
            "type": "string"
          },
          "firstNet": {
            "type": "boolean"
          },
          "convergedConnectivityIndicator": {
            "type": "boolean"
          },
          "nciIndicator": {
            "type": "boolean"
          },
          "subscriptionClass": {
            "type": "string"
          },
          "superPlanIndicator": {
            "type": "boolean"
          },
          "superLinkedDataCTNs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SuperLinkedDataCTN"
            }
          },
          "isSuperPhonePlan": {
            "type": "boolean"
          },
          "isGreenVilleMember": {
            "type": "boolean"
          },
          "duoIdentifier": {
            "type": "string"
          }
        }
      },
      "SuperLinkedDataCTN": {
        "type": "object",
        "properties": {
          "superDataDvcCTN": {
            "type": "string"
          },
          "superDataDvcCategory": {
            "type": "string"
          },
          "superDataSdfSoc": {
            "type": "string"
          }
        }
      },
      "MultiLineContext": {
        "type": "object",
        "properties": {
          "lineDetail": {
            "type": "string"
          },
          "identifier": {
            "type": "string"
          },
          "ctn": {
            "type": "string"
          }
        }
      },
      "MultilineEntry": {
        "type": "object",
        "properties": {
          "lineNumber": {
            "type": "string"
          },
          "skuId": {
            "type": "string"
          },
          "ctn": {
            "type": "string"
          }
        }
      },
      "ProductOfferingQualificationRequest": {
        "type": "object",
        "properties": {
          "channel": {
            "$ref": "#/components/schemas/QualificationChannel"
          },
          "relatedParty": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/QualificationRelatedParty"
            }
          },
          "place": {
            "$ref": "#/components/schemas/QualificationPlace"
          },
          "qualificationItem": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/QualificationItem"
            }
          },
          "context": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/QualificationContext"
            }
          },
          "prePopulatedCustomerData": {
            "$ref": "#/components/schemas/PrePopulatedCustomerData"
          },
          "fanId": {
            "type": "string"
          },
          "productOrderId": {
            "type": "string"
          },
          "productOrderItemId": {
            "type": "string"
          },
          "productOfferingId": {
            "type": "string"
          },
          "productOfferingIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "limit": {
            "type": "integer",
            "format": "int32"
          },
          "offset": {
            "type": "integer",
            "format": "int32"
          },
          "mode": {
            "type": "string"
          },
          "losgTypes": {
            "type": "string"
          },
          "dealerCode": {
            "type": "string"
          },
          "deviceCategory": {
            "type": "string"
          }
        }
      },
      "QualificationChannel": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        }
      },
      "QualificationContext": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        }
      },
      "QualificationItem": {
        "type": "object",
        "properties": {
          "actionType": {
            "type": "string"
          },
          "paymentType": {
            "type": "string"
          },
          "customerType": {
            "type": "string"
          },
          "customerSubType": {
            "type": "string"
          },
          "groupChangeInFocus": {
            "type": "string"
          },
          "ctn": {
            "type": "string"
          },
          "categoryName": {
            "type": "string"
          },
          "productOfferingType": {
            "type": "string"
          },
          "relationType": {
            "type": "string"
          },
          "serviceFlow": {
            "type": "boolean"
          },
          "losgTypes": {
            "type": "string"
          },
          "planType": {
            "type": "string"
          },
          "deviceCategory": {
            "type": "string"
          },
          "planGroupId": {
            "type": "string"
          },
          "intent": {
            "type": "string"
          },
          "deviceCount": {
            "type": "string"
          },
          "customerIntend": {
            "type": "string"
          },
          "cartSuperPhoneLineCount": {
            "type": "integer",
            "format": "int32"
          },
          "categoryType": {
            "type": "string"
          },
          "planSkuIds": {
            "type": "string"
          },
          "agentType": {
            "type": "string"
          },
          "billingState": {
            "type": "string"
          },
          "channel": {
            "type": "string"
          }
        }
      },
      "QualificationPlace": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "postCode": {
            "type": "string"
          },
          "market": {
            "type": "string"
          },
          "subMarket": {
            "type": "string"
          },
          "@type": {
            "type": "string"
          }
        }
      },
      "QualificationRelatedParty": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "role": {
            "type": "string"
          },
          "@referredType": {
            "type": "string"
          }
        }
      },
      "BundledProductSpecification": {
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Unique identifier of the product specification. e.g.\"f1c5f22d-c331-47e2-ba3a-4814fde0e56f\""
          },
          "name": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Name of the product specification. e.g.\"6874A\""
          }
        },
        "description": "A type of ProductSpecification that belongs to a grouping of ProductSpecifications made available to the market. It inherits of all attributes of ProductSpecification."
      },
      "CharacteristicValueSpecification": {
        "type": "object",
        "properties": {
          "isDefault": {
            "type": "boolean",
            "description": "Required=false, If true, the Boolean Indicates if the value is the default value for a characteristic",
            "enum": [
              true,
              false
            ]
          },
          "expiredForSales": {
            "type": "boolean",
            "description": "Required=false, A boolean value that indicates whether the product specification is expired for selling or not",
            "enum": [
              true,
              false
            ]
          },
          "value": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Characteristic Value. e.g.\"Apple\""
          },
          "valueType": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, A kind of value that the characteristic value can take on, such as numeric, text and so forth",
            "enum": [
              "String",
              "Number",
              "Text"
            ]
          },
          "valueFrom": {
            "maxLength": 50,
            "minLength": 1,
            "type": "integer",
            "description": "Required=false, The low range value that a characteristic can take on",
            "format": "int32"
          },
          "valueTo": {
            "maxLength": 50,
            "minLength": 3,
            "type": "integer",
            "description": "Required=false, The upper range value that a characteristic can take on",
            "format": "int32"
          }
        },
        "description": "A ProductSpecificationCharacteristicValue object is used to define a set of attributes, each of which can be assigned to a corresponding set of attributes in a ProductSpecificationCharacteristic object. The values of the attributes in the ProductSpecificationCharacteristicValue object describe the values of the attributes that a corresponding ProductSpecificationCharacteristic object can take on."
      },
      "ProductSpecification": {
        "required": [
          "brand",
          "description",
          "expiredForSales",
          "href",
          "id",
          "isBundle",
          "lastUpdate",
          "name",
          "productNumber",
          "version"
        ],
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=true, Unique identifier of the product specification. e.g.\"f1c5f22d-c331-47e2-ba3a-4814fde0e56c\""
          },
          "href": {
            "maxLength": 100,
            "minLength": 3,
            "type": "string",
            "description": "Required=true, URL Reference of the product specification"
          },
          "name": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=true, Name of the product specification. e.g.\"6874C\""
          },
          "description": {
            "type": "string",
            "description": "Required=true, A narrative that explains in detail what the product specification is. e.g.\"iPhone 12 Pro. Superfast 5G. A14 Bionic, the fastest chip in a smartphone. Pro camera system for next-level low-light photography. It's a beautiful leap forward.\""
          },
          "brand": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=true, The manufacturer or trademark of the specification. e.g.\"Apple\""
          },
          "productNumber": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=true, An identification number assigned to uniquely identity the specification. e.g.\"PRODUCT123\""
          },
          "version": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=true, Product specification version. e.g.\"1.0\""
          },
          "expiredForSales": {
            "type": "boolean",
            "description": "Required=true, A boolean value that indicates whether the product specification is expired for selling or not",
            "enum": [
              true,
              false
            ]
          },
          "isBundle": {
            "type": "boolean",
            "description": "Required=true, isBundle determines whether a productSpecification represents a single productSpecification (false), or a bundle of productSpecification (true).",
            "enum": [
              true,
              false
            ]
          },
          "lastUpdate": {
            "type": "string",
            "description": "Required=true, Date and time of the last update. e.g.\"1970-01-01T00:00:00Z\""
          },
          "bundledProductSpecification": {
            "type": "array",
            "description": "Required=false, A type of ProductSpecification that belongs to a grouping of ProductSpecifications made available to the market. It inherits of all attributes of ProductSpecification.",
            "items": {
              "$ref": "#/components/schemas/BundledProductSpecification"
            }
          },
          "productSpecCharacteristic": {
            "type": "array",
            "description": "Required=false, A characteristic quality or distinctive feature of a ProductSpecification. The characteristic can be take on a discrete value, such as color, can take on a range of values,(for example, sensitivity of 100-240 mV), or can be derived from a formula (for example, usage time (hrs) = 30 - talk time *3). Certain characteristics, such as color, may be configured during the ordering or some other process.",
            "items": {
              "$ref": "#/components/schemas/ProductSpecificationCharacteristic"
            }
          },
          "productSpecificationRelationship": {
            "type": "array",
            "description": "Required=false, A migration, substitution, dependency or exclusivity relationship between/among product specifications.",
            "items": {
              "$ref": "#/components/schemas/ProductSpecificationRelationship"
            }
          },
          "productSpecType": {
            "$ref": "#/components/schemas/ProductSpecificationType"
          },
          "relatedParty": {
            "type": "array",
            "description": "Required=false, A related party defines party or party role linked to a specific entity.",
            "items": {
              "$ref": "#/components/schemas/RelatedParty"
            }
          }
        },
        "description": "ProductSpecification is a detailed description of a tangible or intangible object made available externally in the form of a ProductOffering to customers or other parties playing a party role."
      },
      "ProductSpecificationCharacteristic": {
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Unique ID for the characteristic. e.g.\"f1c5f22d-c331-47e2-ba3a-4814fde0e56d\""
          },
          "name": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, A word, term, or phrase by which this characteristic specification is known and distinguished from other characteristic specifications. e.g.\"Brand\""
          },
          "allowProductOfferingOverride": {
            "type": "boolean",
            "description": "Required=false",
            "enum": [
              true,
              false
            ]
          },
          "configurable": {
            "type": "boolean",
            "description": "Required=false, If true, the Boolean indicates that the target Characteristic is configurable",
            "enum": [
              true,
              false
            ]
          },
          "description": {
            "type": "string",
            "description": "Required=false, A narrative that explains the CharacteristicSpecification. e.g.\"The name of the device manufacturer\""
          },
          "extensible": {
            "type": "boolean",
            "description": "Required=false, An indicator that specifies that the values for the characteristic can be extended by adding new values when instantiating a characteristic for a resource.",
            "enum": [
              true,
              false
            ]
          },
          "isUnique": {
            "type": "boolean",
            "description": "Required=false, An indicator that specifies if a value is unique for the specification. Possible values are; \"unique while value is in effect\" and \"unique whether value is in effect or not\"",
            "enum": [
              true,
              false
            ]
          },
          "source": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false"
          },
          "sourceType": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false"
          },
          "unitOfMeasure": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false"
          },
          "unitOfMeasureType": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false"
          },
          "valueType": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, A kind of value that the characteristic can take on, such as numeric, text and so forth. e.g.\"String\""
          },
          "variantGroupCharacteristic": {
            "type": "boolean",
            "description": "Required=false",
            "enum": [
              true,
              false
            ]
          },
          "productSpecCharacteristicValue": {
            "type": "array",
            "description": "Required=false, A ProductSpecificationCharacteristicValue object is used to define a set of attributes, each of which can be assigned to a corresponding set of attributes in a ProductSpecificationCharacteristic object. The values of the attributes in the ProductSpecificationCharacteristicValue object describe the values of the attributes that a corresponding ProductSpecificationCharacteristic object can take on.",
            "items": {
              "$ref": "#/components/schemas/CharacteristicValueSpecification"
            }
          },
          "maxCardinality": {
            "maxLength": 10,
            "minLength": 1,
            "type": "integer",
            "description": "Required=false, The maximum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where five is the value for the maxCardinality. e.g.\"1\"",
            "format": "int32"
          },
          "minCardinality": {
            "maxLength": 10,
            "minLength": 1,
            "type": "integer",
            "description": "Required=false, The minimum number of instances a CharacteristicValue can take on. For example, zero to five phone numbers in a group calling plan, where zero is the value for the minCardinality. e.g.\"0\"",
            "format": "int32"
          }
        },
        "description": "Required=false, A characteristic quality or distinctive feature of a ProductSpecification. The characteristic can be take on a discrete value, such as color, can take on a range of values,(for example, sensitivity of 100-240 mV), or can be derived from a formula (for example, usage time (hrs) = 30 - talk time *3). Certain characteristics, such as color, may be configured during the ordering or some other process."
      },
      "ProductSpecificationRelationship": {
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, unique identifier for the product specification relationship. e.g.\"f1c5f22d-c331-47e2-ba3a-4814fde0e56e\""
          },
          "name": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Name of the related entity."
          },
          "productSpecificationTypeId": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Product Specification Type Id"
          },
          "relationshipType": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Type of relationship such as migration, substitution, dependency, exclusivity"
          }
        },
        "description": "Required=false, A migration, substitution, dependency or exclusivity relationship between/among product specifications."
      },
      "ProductSpecificationType": {
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Unique ID for the characteristic. e.g.\"f1c5f22d-c331-47e2-ba3a-4814fde0e56h\""
          }
        },
        "description": "Defines type of the Product Specification."
      },
      "RelatedParty": {
        "type": "object",
        "properties": {
          "id": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Unique Identifier of the related entity. e.g.\"f1c5f22d-c331-47e2-ba3a-4814fde0e56j\""
          },
          "name": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Name of the related entity."
          },
          "role": {
            "maxLength": 50,
            "minLength": 3,
            "type": "string",
            "description": "Required=false, Role played by the related party. e.g.\"customer\"",
            "enum": [
              "customer"
            ]
          }
        },
        "description": "A related party defines party or party role linked to a specific entity."
      },
      "ActionReason": {
        "required": [
          "action",
          "name",
          "reason"
        ],
        "type": "object",
        "properties": {
          "reason": {
            "type": "string",
            "description": "Name of the modification reason "
          },
          "name": {
            "type": "string",
            "description": "Name of the modification reason "
          },
          "reasonText": {
            "type": "string",
            "description": "Text of the modification reason. This property is populated if the type of the modification reason requires an input of a free text. "
          },
          "action": {
            "type": "string",
            "description": "Action performed on the instance of the product offering "
          },
          "metadata": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Metadata"
            }
          }
        },
        "description": "Modification reason associated with the action performed on the product offering that is related to the order item "
      },
      "AppliedTax": {
        "required": [
          "taxAmount",
          "taxDefinition",
          "taxableAmount"
        ],
        "type": "object",
        "properties": {
          "taxDefinition": {
            "$ref": "#/components/schemas/TaxDefinition"
          },
          "taxAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "taxableAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "exemptAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "periodCoverage": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "characteristic": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Characteristic"
            }
          },
          "component": {
            "$ref": "#/components/schemas/Component"
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "description": "Calculated tax response"
      },
      "AppointmentRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the appointment "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the appointment "
          },
          "referredType": {
            "type": "string",
            "description": "Unique identifier of the appointment "
          },
          "type": {
            "type": "string",
            "description": "Hypertext reference to the appointment "
          }
        },
        "description": "Reference to the appointment information that is captured if a product order item requires an appointment between the service provider and the customer. "
      },
      "Attachment": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique Identifier of the attachment"
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the individual."
          },
          "name": {
            "type": "string",
            "description": "Name of the Attachment"
          },
          "description": {
            "type": "string",
            "description": "Attachment description"
          },
          "type": {
            "type": "string",
            "description": "Identifies the type of the attachment - identity, invoice, quote etc. "
          },
          "mimeType": {
            "type": "string",
            "description": "Attachment mimeType"
          },
          "size": {
            "type": "number",
            "description": "Size of the Attachment"
          },
          "sizeUnit": {
            "type": "string",
            "description": "Unit of measure for size ( bytes, kiloBytes etc.)"
          },
          "url": {
            "type": "string",
            "description": "URL/location of the attachment in underlying document management system. "
          },
          "relatedEntity": {
            "$ref": "#/components/schemas/EntityRef"
          },
          "validFor": {
            "$ref": "#/components/schemas/TimePeriod"
          }
        },
        "description": "Attachment resource"
      },
      "BillingAccountRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the billing account "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the billing account "
          },
          "name": {
            "type": "string",
            "description": "Name of the billing account "
          },
          "ratingType": {
            "type": "string",
            "description": "ratingType of the billing account "
          },
          "referredType": {
            "type": "string",
            "description": "The actual type of the target instance when needed for disambiguation "
          },
          "type": {
            "type": "string",
            "description": "When sub-classing, this defines the sub-class entity name "
          }
        },
        "description": "Reference to the billing account "
      },
      "BillingProfile": {
        "type": "object",
        "properties": {
          "category": {
            "type": "string"
          }
        },
        "description": "BillingProfile reference. A BillingProfile is a detailed description of a billing profile structure."
      },
      "BusinessActivity": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "the name of the business activty"
          },
          "effectiveDate": {
            "type": "string",
            "description": "the date of the business activty"
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "description": "Business Activity include dates that will be used by other system like billing, fulfilment, etc.. "
      },
      "ChannelRef": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the channel "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the channel "
          },
          "name": {
            "type": "string",
            "description": "Name of the channel "
          },
          "role": {
            "type": "string",
            "description": "Role of the channel, for example, *initChannel* "
          },
          "extensions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/KeyValueObject"
            }
          }
        },
        "description": "Channel associated with a resource "
      },
      "Component": {
        "type": "object",
        "properties": {
          "splitCode": {
            "type": "string",
            "description": "Referenced split code that is used to calculate the specific applied tax "
          },
          "amount": {
            "$ref": "#/components/schemas/Money"
          },
          "revenueType": {
            "type": "string",
            "description": "Revenue type of the component tax calculation item, such as Voice or Data "
          },
          "taxCode": {
            "type": "string",
            "description": "Tax code of the component tax calculation item "
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "description": "Revenue component details if the tax calculation item is split to revenue components "
      },
      "ConfigurationChange": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the configuration change "
          },
          "text": {
            "type": "string",
            "description": "Localized descriptive configuration change message "
          },
          "type": {
            "type": "string",
            "description": "Implementation discriminator of the configuration change "
          },
          "parameter": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConfigurationChangeParameter"
            }
          },
          "severity": {
            "type": "string",
            "description": "Severity of the configuration change "
          },
          "path": {
            "type": "string",
            "description": "Path to the configuration change in the resource model "
          },
          "skipRevalidation": {
            "type": "boolean",
            "description": "Indicates whether revalidation of the configuration change is required "
          },
          "patchElement": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PatchElement"
            }
          },
          "configurationChangeSource": {
            "type": "array",
            "description": "Holds a list of the impacting components that are involved in action rule - enablmentRelation - The action rule has impacting enablment relation functionality or was created by this functionality. - commertialRelation - The action rule has impacting commertial relation functionality or was created by this functionality. - subscriptionRelation - The action rule has impacting subscription relation or was created by this functionality. functionality - catalog - The action rule was created by catalog. ",
            "items": {
              "type": "string",
              "description": "Holds a list of the impacting components that are involved in action rule - enablmentRelation - The action rule has impacting enablment relation functionality or was created by this functionality. - commertialRelation - The action rule has impacting commertial relation functionality or was created by this functionality. - subscriptionRelation - The action rule has impacting subscription relation or was created by this functionality. functionality - catalog - The action rule was created by catalog. "
            }
          }
        },
        "description": "Configuration change recommended for a validated resource "
      },
      "ConfigurationChangeParameter": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the parameter "
          },
          "value": {
            "type": "array",
            "description": "Value(s) of the parameter ",
            "items": {
              "type": "string",
              "description": "Value(s) of the parameter "
            }
          },
          "valueType": {
            "type": "string",
            "description": "Types of each Value in the parameter array As a default - when empty - the type is string. Also will be supported- ** HashMap - a jason format representation of key value <string,string> map. "
          }
        },
        "description": "Name/value pair of the configuration change parameters "
      },
      "ContextCharacteristic": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the characteristic "
          },
          "contextType": {
            "type": "string",
            "description": "The context type of the characteristic "
          },
          "valueType": {
            "type": "string",
            "description": "The value type of the characteristic  "
          },
          "value": {
            "type": "array",
            "description": "The value of the characteristic ",
            "items": {
              "type": "string",
              "description": "The value of the characteristic "
            }
          }
        },
        "description": "The list of dynamic characteristics related to a specific context "
      },
      "EntityRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the related entity"
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the related entity"
          },
          "name": {
            "type": "string",
            "description": "Name of the related entity"
          },
          "description": {
            "type": "string",
            "description": "Description of the related entity"
          },
          "referredType": {
            "type": "string",
            "description": "Type of the related entity (e.g. individual, bill, product, account etc.). Always in lower case. "
          }
        },
        "description": "Describes a reference to an entity to which the attachment is associated "
      },
      "ExternalIdentifier": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of the external system "
          },
          "id": {
            "type": "string",
            "description": "Unique identifier in the external system "
          },
          "version": {
            "type": "string",
            "description": "Version of the related entity in the external system "
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          },
          "owner": {
            "type": "string",
            "description": "The external system identifier that owns the identifier "
          },
          "externalIdentifierType": {
            "type": "string",
            "description": "Type of the external system identifier "
          }
        },
        "description": "Reference to an external system identifier "
      },
      "InstallmentOptionExtensions": {
        "type": "object",
        "properties": {
          "promoInstallmentDuration": {
            "type": "integer",
            "format": "int32"
          }
        },
        "description": "Represents an installment option extensions"
      },
      "KeyValueObject": {
        "required": [
          "name",
          "value"
        ],
        "type": "object",
        "properties": {
          "@baseType": {
            "type": "string"
          },
          "@referredType": {
            "type": "string"
          },
          "@schemaLocation": {
            "type": "string",
            "format": "uri"
          },
          "@type": {
            "type": "string"
          },
          "href": {
            "type": "string",
            "format": "uri"
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "valueType": {
            "type": "string"
          }
        }
      },
      "ManageDate": {
        "type": "object",
        "properties": {
          "action": {
            "type": "string"
          },
          "override": {
            "type": "string"
          },
          "date": {
            "$ref": "#/components/schemas/Characteristic"
          }
        },
        "description": "Changes to the customer-owned product offering configuration while it is being added as a shopping cart item or as a product order item "
      },
      "ManagePhoneNumber": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the product offering (instance) "
          },
          "reason": {
            "$ref": "#/components/schemas/Reason"
          },
          "phoneNumber": {
            "$ref": "#/components/schemas/PhoneNumber"
          }
        },
        "description": "Changes to the customer-owned product offering configuration while it is being added as a shopping cart item or as a product order item "
      },
      "ModifyReason": {
        "required": [
          "action",
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the modification reason "
          },
          "reasonText": {
            "type": "string",
            "description": "Text of the modification reason. This property is populated if the type of the modification reason requires an input of a free text. "
          },
          "action": {
            "type": "string",
            "description": "Action performed on the instance of the product offering "
          }
        },
        "description": "Modification reason associated with the action performed on the product offering that is related to the order item "
      },
      "NextAction": {
        "type": "object",
        "properties": {
          "actionReason": {
            "$ref": "#/components/schemas/ActionReason"
          },
          "nextActionType": {
            "type": "string",
            "description": "next action type can be catalog define limit duration product, catalog define limit duration promotion or customer defined temporary action "
          },
          "action": {
            "type": "string",
            "description": "Action applied to the order item (for example - add, suspend, resume, terminate, and so on). If there are multiple actions, a semicolon (;) is used as the delimiter. "
          },
          "durationPolicy": {
            "$ref": "#/components/schemas/DurationPolicy"
          },
          "modifyReason": {
            "$ref": "#/components/schemas/ModifyReason"
          },
          "calculateEffectiveDate": {
            "type": "string",
            "description": "the date that will be recalculated by the order handling for the next action "
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "description": "Next action in the same order that can be complementary action (for example suspend will have next action resume) "
      },
      "Note": {
        "required": [
          "text",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the note "
          },
          "noteType": {
            "type": "string",
            "description": "Type of the note "
          },
          "date": {
            "type": "string",
            "description": "Date of the note "
          },
          "text": {
            "type": "string",
            "description": "Text of the note "
          },
          "type": {
            "type": "string",
            "description": "Text of the note "
          }
        },
        "description": "Extra information about a given entity "
      },
      "OrderItemRelationship": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the referenced order item "
          },
          "type": {
            "type": "string",
            "description": "Type of the relationship to the related order item "
          },
          "externalId": {
            "type": "string",
            "description": "External ID of the referenced order item. This value is used if the referenced order item is not persisted yet (that is, no ID was assigned for it). The *id* attribute, if set, takes precedence over the external ID. "
          },
          "relationshipType": {
            "type": "string",
            "description": "The type of the order item relationship "
          },
          "relationshipSubtype": {
            "type": "string",
            "description": "The subtype of the order item relationship, such as Explicit, Implicit, and so on   "
          }
        },
        "description": "Relationship between order items "
      },
      "OrderPrice": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the catalog price "
          },
          "name": {
            "type": "string",
            "description": "Name of the catalog price, for example, Subscription Price "
          },
          "description": {
            "type": "string",
            "description": "Detailed description of the catalog price of the entity (the product order or the order item) "
          },
          "unitOfMeasure": {
            "type": "string",
            "description": "Unit of measurement of the catalog price. This property is populated if the price type is allowance, such as gigabytes, minutes, and so on. "
          },
          "recurringChargePeriod": {
            "type": "string",
            "description": "Period for which to repeat the application of the recurring charge - days, weeks, months, or years. This property is populated only if the price type is Recurring. "
          },
          "recurringChargePeriodLength": {
            "type": "integer",
            "description": "The period length of the recurring charge ",
            "format": "int32"
          },
          "priceType": {
            "type": "string",
            "description": "Category of the catalog price, for example, allowance, recurring, and so on "
          },
          "priceCategory": {
            "type": "string",
            "description": "The category of the price, such as service fee, tax fee, and so on "
          },
          "price": {
            "$ref": "#/components/schemas/Price"
          },
          "finalPrice": {
            "$ref": "#/components/schemas/Price"
          },
          "standalonePrice": {
            "$ref": "#/components/schemas/Price"
          },
          "priceAlteration": {
            "type": "array",
            "description": "Price alteration records ",
            "items": {
              "$ref": "#/components/schemas/PriceAlteration"
            }
          },
          "billingAccount": {
            "$ref": "#/components/schemas/BillingAccountRef"
          },
          "billingProfile": {
            "$ref": "#/components/schemas/BillingProfile"
          },
          "immediatePayOption": {
            "$ref": "#/components/schemas/ImmediatePayOption"
          },
          "installmentOption": {
            "$ref": "#/components/schemas/InstallmentOption"
          },
          "orderPriceRelationship": {
            "$ref": "#/components/schemas/OrderPriceRelationship"
          },
          "taxIncluded": {
            "type": "string",
            "description": "Indicates whether the price is defined in CatalogONE as including tax or excluding tax. Valid values are Excluded and Included. "
          },
          "priceOverrideOption": {
            "$ref": "#/components/schemas/PriceOverrideOption"
          },
          "role": {
            "type": "string",
            "description": "The role of the price, for example, price, bundle price alteration, and so on "
          },
          "chargeType": {
            "type": "string"
          },
          "periodCoverage": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "prorationFactor": {
            "type": "number",
            "format": "float"
          },
          "productOfferingPrice": {
            "$ref": "#/components/schemas/ProductOfferingPriceRef"
          },
          "payment": {
            "type": "array",
            "description": "Payment captured and stored for the price ",
            "items": {
              "$ref": "#/components/schemas/PaymentRef"
            }
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "description": "An amount, usually of money, that represents the actual price paid by the customer for the order item or the product order in CatalogONE "
      },
      "OrderPriceRelationship": {
        "required": [
          "id",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the related *OrderPrice* entity "
          },
          "type": {
            "type": "string",
            "description": "Type of the relationship "
          }
        },
        "description": "Relationship between the *OrderPrice* entities "
      },
      "OrderRelationship": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the product order "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the product order "
          },
          "type": {
            "type": "string",
            "description": "Relation type "
          }
        },
        "description": "Relation to another product order "
      },
      "OrderTerm": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the product order commitment term "
          },
          "description": {
            "type": "string",
            "description": "Description of the product order commitment term "
          },
          "duration": {
            "$ref": "#/components/schemas/Quantity"
          },
          "remainingDuration": {
            "$ref": "#/components/schemas/Quantity"
          },
          "elapsedDuration": {
            "$ref": "#/components/schemas/Quantity"
          },
          "type": {
            "type": "string",
            "description": "Type of the resource "
          },
          "validFor": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "freezeDate": {
            "type": "string",
            "description": "Date on which the commitment was frozen due to an action performed on the product "
          },
          "impactType": {
            "type": "string",
            "description": "Type of the impact on the term of the order item due to an action performed on the product   "
          },
          "policyId": {
            "type": "string",
            "description": "Unique identifier of the order item term policy "
          },
          "attachment": {
            "type": "array",
            "description": "Attachment of the product ",
            "items": {
              "$ref": "#/components/schemas/Attachment"
            }
          },
          "metadata": {
            "type": "array",
            "description": "Metadata of the product order commitment term ",
            "items": {
              "$ref": "#/components/schemas/Metadata"
            }
          }
        },
        "description": "Commitment with duration. Either a duration or a name must be provided. "
      },
      "PatchElement": {
        "type": "object",
        "properties": {
          "op": {
            "type": "string",
            "description": "Operation that is associated with the patched resource part. Valid values are *add*, *remove*, or *replace*. "
          },
          "path": {
            "type": "string",
            "description": "Path of this resource part within the patched resource, for example, *_/note*, *_/name*, or *_/orderItem/quantity* "
          },
          "value": {
            "type": "object",
            "description": "Value of the patched resource part "
          },
          "patchElement": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PatchElementParameter"
            }
          }
        },
        "description": "Patched resource part "
      },
      "PatchElementParameter": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the parameter "
          },
          "value": {
            "type": "string",
            "description": "Value of the parameter "
          }
        },
        "description": "Name/value pair of the PatchElement parameters "
      },
      "PaymentAmount": {
        "type": "object",
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/Money"
          },
          "percentage": {
            "type": "number",
            "description": "Represents the percentage that the amount represents out of the price ",
            "format": "float"
          },
          "taxIncludedAmount": {
            "$ref": "#/components/schemas/Money"
          },
          "dutyFreeAmount": {
            "$ref": "#/components/schemas/Money"
          }
        },
        "description": "Represents a payment amount "
      },
      "PaymentRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the payment "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the payment "
          },
          "role": {
            "type": "string",
            "description": "The role of the payment, for example, internal, external, and so on "
          }
        },
        "description": "Reference to the immediate payment information that is captured for the product order if such payment was performed at the product order submission "
      },
      "PhoneNumber": {
        "type": "object",
        "properties": {
          "isPhoneNumberPortedIn": {
            "type": "string"
          },
          "portedProvider": {
            "type": "string"
          },
          "phoneNumber": {
            "type": "string"
          },
          "temporaryPhoneNumber": {
            "type": "string"
          },
          "productCharacteristic": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Characteristic"
            }
          }
        },
        "description": "The reason for the action  "
      },
      "PlaceRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the place "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the place "
          },
          "name": {
            "type": "string",
            "description": "User-friendly name for the place, such as Paris Store, Main Home, and so on "
          },
          "role": {
            "type": "string",
            "description": "Role of the place "
          }
        },
        "description": "Places where the products are sold or delivered "
      },
      "PriceAlteration": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the price, for example, Subscription Price "
          },
          "description": {
            "type": "string",
            "description": "Detailed description of the price of the entity  "
          },
          "unitOfMeasure": {
            "type": "string",
            "description": "Unit of measurement of the price. This property is populated if the price type is allowance, such as gigabytes, minutes, and so on. "
          },
          "recurringChargePeriod": {
            "type": "string",
            "description": "Recurring charge period. This property is populated if the price type is Recurring. "
          },
          "recurringChargePeriodLength": {
            "type": "integer",
            "description": "The period length of the recurring charge ",
            "format": "int32"
          },
          "priceType": {
            "type": "string",
            "description": "Category of the price, for example, allowance, recurring, and so on "
          },
          "applicationDuration": {
            "type": "integer",
            "description": "Duration of the price ",
            "format": "int32"
          },
          "priority": {
            "type": "integer",
            "description": "Priority of the price ",
            "format": "int32"
          },
          "alterationType": {
            "type": "string",
            "description": "Type of the alteration "
          },
          "promotionActionId": {
            "type": "string",
            "description": "Unique identifier of the promotion action triggering this price alteration "
          },
          "immediatePromotionId": {
            "type": "string",
            "description": "Unique identifier of the promotion instance "
          },
          "alterationProductOfferingPriceId": {
            "type": "string",
            "description": "Unique identifier of the product offering price on behalf of which the price alteration was given "
          },
          "alterationBundleProductOfferingId": {
            "type": "string",
            "description": "Unique identifier of the bundle product offering on behalf of which the price alteration was given "
          },
          "alterationApplyOrder": {
            "type": "integer",
            "description": "Order of the alteration price appliance ",
            "format": "int32"
          },
          "chargeType": {
            "type": "string",
            "description": "Charge type represented by the price alteration. The supported values are&#58;<ul><li>debit<li>discount<li>credit</ul>  "
          },
          "price": {
            "$ref": "#/components/schemas/Price"
          },
          "productOfferingPrice": {
            "$ref": "#/components/schemas/ProductOfferingPriceRef"
          }
        },
        "description": "An amount, usually of money, that modifies the price charged for an  item "
      },
      "PriceOverrideOption": {
        "type": "object",
        "properties": {
          "overrideType": {
            "type": "string",
            "description": "Indicates which override option the CSR can apply. Valid Values &#58; waive, absolute, increase, decrease "
          },
          "overrideValue": {
            "$ref": "#/components/schemas/PaymentAmount"
          },
          "validFor": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "relatedParty": {
            "$ref": "#/components/schemas/RelatedPartyRef"
          },
          "reason": {
            "$ref": "#/components/schemas/ModifyReason"
          }
        },
        "description": "The waive and override data of a price "
      },
      "PriceParam": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of the parameter "
          },
          "name": {
            "type": "string",
            "description": "The name of the parameter "
          },
          "value": {
            "type": "string",
            "description": "The value of the parameter "
          }
        },
        "description": "The parameters that may impact/impact the price "
      },
      "ProductCharacteristic": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the product characteristic "
          },
          "value": {
            "type": "string",
            "description": "Value of the product characteristic "
          },
          "valueType": {
            "type": "string",
            "description": "Value type of the product characteristic "
          },
          "metadata": {
            "type": "array",
            "description": "Metadata of the product characteristic ",
            "items": {
              "$ref": "#/components/schemas/Metadata"
            }
          },
          "valueMetadata": {
            "type": "array",
            "description": "Metadata of the product characteristic value ",
            "items": {
              "$ref": "#/components/schemas/ValueMetadata"
            }
          }
        },
        "description": "Characteristics of the product to instantiate or to modify "
      },
      "ProductConfiguration": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          }
        }
      },
      "ProductCriteria": {
        "type": "object",
        "properties": {
          "sourceRelatedParty": {
            "$ref": "#/components/schemas/RelatedPartyRef"
          },
          "product": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Product"
            }
          }
        }
      },
      "ProductOfferingGroupOption": {
        "type": "object",
        "properties": {
          "groupOptionId": {
            "type": "string",
            "description": "Unique identifier of the product offering group option in the product catalog "
          }
        },
        "description": "Reference to the product offering group option from the product catalog "
      },
      "ProductOrder": {
        "required": [
          "orderItem",
          "productOrderItem"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the product order "
          },
          "href": {
            "type": "string",
            "description": "Hypertext reference to the product order "
          },
          "category": {
            "type": "string",
            "description": "Category of the product order, for example, Residential, Business, Bulk, and so on "
          },
          "subCategory": {
            "type": "string",
            "description": "Sub category of the product order, for example, PreActivation, Suspend, and so on "
          },
          "priority": {
            "type": "string",
            "description": "Priority of the product order "
          },
          "description": {
            "type": "string",
            "description": "Description of the product order "
          },
          "state": {
            "type": "string",
            "description": "State of the product order, for example, Acknowledged, Rejected, Pending, and so on "
          },
          "externalId": {
            "type": "string",
            "description": "External ID of the product order. This parameter is usually provided by a consumer to identify the product order in the consumer system. "
          },
          "orderDate": {
            "type": "string",
            "description": "Date on which the product order was created "
          },
          "lastUpdate": {
            "type": "string",
            "description": "Date on which the product order was last updated "
          },
          "lastUpdateDate": {
            "type": "string",
            "description": "Date on which the product order was last updated "
          },
          "completionDate": {
            "type": "string",
            "description": "Date on which the product order was completed "
          },
          "requestedStartDate": {
            "type": "string",
            "description": "Date on which the product order was requested to be started "
          },
          "requestedCompletionDate": {
            "type": "string",
            "description": "Date on which the product order was requested to be completed "
          },
          "expectedCompletionDate": {
            "type": "string",
            "description": "Date on which the product order is expected to be completed "
          },
          "notificationContact": {
            "type": "string",
            "description": "Contact for the notification "
          },
          "orderPriceDate": {
            "type": "string",
            "description": "Date on which the product order price was calculated "
          },
          "priceDate": {
            "type": "string",
            "description": "Date on which the product order price was calculated "
          },
          "isCustomerVisible": {
            "type": "boolean",
            "description": "Indicates whether the product order is visible to the customer "
          },
          "relatedParty": {
            "type": "array",
            "description": "Party associated with the product order ",
            "items": {
              "$ref": "#/components/schemas/RelatedPartyRef"
            }
          },
          "billingAccount": {
            "$ref": "#/components/schemas/BillingAccountRef"
          },
          "orderItem": {
            "type": "array",
            "description": "Active order item of the product order ",
            "items": {
              "$ref": "#/components/schemas/OrderItem"
            }
          },
          "productOrderItem": {
            "type": "array",
            "description": "Active order item of the product order ",
            "items": {
              "$ref": "#/components/schemas/ProductOrderItem"
            }
          },
          "orderTotalPrice": {
            "type": "array",
            "description": "Total price of the product order ",
            "items": {
              "$ref": "#/components/schemas/OrderPrice"
            }
          },
          "channel": {
            "type": "array",
            "description": "Channel of the product order ",
            "items": {
              "$ref": "#/components/schemas/ChannelRef"
            }
          },
          "validation": {
            "$ref": "#/components/schemas/Validation"
          },
          "payment": {
            "type": "array",
            "description": "Payment performed for the entire order or for an order item ",
            "items": {
              "$ref": "#/components/schemas/PaymentRef"
            }
          },
          "immediatePromotion": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ImmediatePromotion"
            }
          },
          "externalIdentifier": {
            "type": "array",
            "description": "List of external identifiers related to the product order ",
            "items": {
              "$ref": "#/components/schemas/ExternalIdentifier"
            }
          },
          "orderRelationship": {
            "type": "array",
            "description": "Relation to other product order resources ",
            "items": {
              "$ref": "#/components/schemas/OrderRelationship"
            }
          },
          "note": {
            "type": "array",
            "description": "Extra information about the product order ",
            "items": {
              "$ref": "#/components/schemas/Note"
            }
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          },
          "businessActivity": {
            "type": "array",
            "description": "The business activities associated with this product order.",
            "items": {
              "$ref": "#/components/schemas/BusinessActivity"
            }
          },
          "manageDate": {
            "type": "array",
            "description": "Manage Date of the product order ",
            "items": {
              "$ref": "#/components/schemas/ManageDate"
            }
          }
        },
        "description": "Product order resource "
      },
      "ProductOrderItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the order item "
          },
          "action": {
            "type": "string",
            "description": "Action applied to the order item (for example - add, suspend, resume, terminate, and so on). If there are multiple actions, a semicolon (;) is used as the delimiter. "
          },
          "state": {
            "type": "string",
            "description": "State of the order item "
          },
          "quantity": {
            "type": "integer",
            "description": "Quantity of the order item. This property is relevant only for the top-most non-serialized order items. ",
            "format": "int32"
          },
          "completionDate": {
            "type": "string",
            "description": "Date on which the order item was completed "
          },
          "requestedStartDate": {
            "type": "string",
            "description": "Date on which the order item was requested to be started "
          },
          "requestedCompletionDate": {
            "type": "string",
            "description": "Date on which the order item was requested to be completed "
          },
          "expectedCompletionDate": {
            "type": "string",
            "description": "Date on which the order item is expected to be completed "
          },
          "retroactiveChangeDate": {
            "type": "string",
            "description": "Past date of a retroactive change performed on the order item "
          },
          "priceDate": {
            "type": "string",
            "description": "priceDate on the order item "
          },
          "creationDate": {
            "type": "string",
            "description": "Item creation date  "
          },
          "itemPrice": {
            "type": "array",
            "description": "Price of the order item ",
            "items": {
              "$ref": "#/components/schemas/OrderPrice"
            }
          },
          "itemTotalPrice": {
            "type": "array",
            "description": "Total price of the order item ",
            "items": {
              "$ref": "#/components/schemas/OrderPrice"
            }
          },
          "orderItemRelationship": {
            "type": "array",
            "description": "Relationship between order items ",
            "items": {
              "$ref": "#/components/schemas/OrderItemRelationship"
            }
          },
          "productOrderItemRelationship": {
            "type": "array",
            "description": "Relationship between order items ",
            "items": {
              "$ref": "#/components/schemas/OrderItemRelationship"
            }
          },
          "productOffering": {
            "$ref": "#/components/schemas/ProductOfferingRef"
          },
          "product": {
            "$ref": "#/components/schemas/Product"
          },
          "billingAccount": {
            "$ref": "#/components/schemas/BillingAccountRef"
          },
          "appointment": {
            "$ref": "#/components/schemas/AppointmentRef"
          },
          "orderItem": {
            "type": "array",
            "description": "List of order items ",
            "items": {
              "$ref": "#/components/schemas/ProductOrderItem"
            }
          },
          "productOrderItem": {
            "type": "array",
            "description": "Price alteration records ",
            "items": {
              "$ref": "#/components/schemas/ProductOrderItem"
            }
          },
          "productOfferingGroupOption": {
            "$ref": "#/components/schemas/ProductOfferingGroupOption"
          },
          "itemTerm": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderTerm"
            }
          },
          "modifyReason": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModifyReason"
            }
          },
          "actionReason": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ActionReason"
            }
          },
          "nextAction": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NextAction"
            }
          },
          "modifyRelatedProducts": {
            "type": "boolean"
          },
          "payment": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentRef"
            }
          },
          "metadata": {
            "type": "array",
            "description": "Product offering metadata ",
            "items": {
              "$ref": "#/components/schemas/Metadata"
            }
          },
          "relatedImmediatePromotion": {
            "type": "array",
            "description": "List of immediate promotions related to the order item ",
            "items": {
              "$ref": "#/components/schemas/RelatedImmediatePromotion"
            }
          },
          "stock": {
            "type": "array",
            "description": "List of stock items ",
            "items": {
              "$ref": "#/components/schemas/StockItem"
            }
          },
          "stockReservation": {
            "type": "array",
            "description": "List of stock reservations ",
            "items": {
              "$ref": "#/components/schemas/ProductStockReservationRef"
            }
          },
          "characteristic": {
            "type": "array",
            "description": "Characteristics of the product offering ",
            "items": {
              "$ref": "#/components/schemas/ProductCharacteristic"
            }
          },
          "externalIdentifier": {
            "type": "array",
            "description": "List of external identifiers related to the order item ",
            "items": {
              "$ref": "#/components/schemas/ExternalIdentifier"
            }
          },
          "note": {
            "type": "array",
            "description": "Extra information about the order item ",
            "items": {
              "$ref": "#/components/schemas/Note"
            }
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          },
          "managePhoneNumber": {
            "$ref": "#/components/schemas/ManagePhoneNumber"
          },
          "manageDate": {
            "type": "array",
            "description": "Manage Date of the product order ",
            "items": {
              "$ref": "#/components/schemas/ManageDate"
            }
          },
          "readOnly": {
            "type": "boolean",
            "description": "Indicates whether the order item can be reconfigured "
          }
        },
        "description": "An identified part of the product order. A product order is decomposed into one or more order items. "
      },
      "ProductOrderRef": {
        "required": [
          "id",
          "productOfferingType",
          "rootBundledProductOrderId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Required=true,  The relevant Business Relationship unique identifier. e.g. 0b2a61d3-35a0-4cd0-bba8-1bafc0694fda"
          },
          "rootBundledProductOrderId": {
            "type": "string",
            "description": "Required=true, Business Relationship name. e.g. Compatible addons for the product. e.g. "
          },
          "productOfferingType": {
            "type": "string",
            "description": "Required=true, Product Offering Type. The type of the product for which the offering requested for. e.g. Mobile_Device "
          }
        },
        "description": "Product Order Reference"
      },
      "ProductRelationship": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of the relationship "
          },
          "subtype": {
            "type": "string",
            "description": "Specific relation entity subtype. Relevant for several relation types  "
          },
          "relationshipType": {
            "type": "string",
            "description": "Type of the relationship "
          },
          "relationshipSubtype": {
            "type": "string",
            "description": "Specific relation entity subtype. Relevant for several relation types  "
          },
          "product": {
            "$ref": "#/components/schemas/Product"
          }
        },
        "description": "Relationship to another product "
      },
      "ProductStockReservationRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the stock reservation "
          }
        },
        "description": "Reference to the stock reservation "
      },
      "QualifyManualPromotionRequest": {
        "type": "object",
        "properties": {
          "associatedContext": {
            "type": "string"
          },
          "manualPromotionMode": {
            "type": "string"
          },
          "salesChannel": {
            "type": "string"
          },
          "relatedParty": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RelatedPartyRef"
            }
          },
          "productConfiguration": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductConfiguration"
            }
          },
          "productOrder": {
            "$ref": "#/components/schemas/ProductOrder"
          }
        }
      },
      "Reason": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "reasonText": {
            "type": "string"
          }
        },
        "description": "The reason for the action  "
      },
      "RelatedImmediatePromotion": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the immediate promotion "
          },
          "itemQualificationType": {
            "type": "string",
            "description": "Type of the qualification result for an item - *trigger* or *benefit* "
          },
          "itemStatus": {
            "type": "string",
            "description": "Status of the item in the promotion: - *add* - A new item in the product promotion - *keep* - An existing item that remains as the result of reevaluation in the product promotion - *revoke* - An existing item that is revoked as the result of reevaluation in the product promotion "
          }
        },
        "description": "Reference to the full immediate promotion "
      },
      "RelatedProductOrderItem": {
        "type": "object",
        "properties": {
          "orderItemId": {
            "type": "string",
            "description": "Unique identifier of the order item "
          },
          "orderItemAction": {
            "type": "string",
            "description": "Action applied to the order item (for example - add, suspend, resume, terminate, and so on). If there are multiple actions, a semicolon (;) is used as the delimiter. "
          },
          "productOrderHref": {
            "type": "string",
            "description": "State of the order item "
          },
          "productOrderId": {
            "type": "string",
            "description": "Quantity of the order item. This property is relevant only for the top-most non-serialized order items. "
          },
          "role": {
            "type": "string",
            "description": "Quantity of the order item. This property is relevant only for the top-most non-serialized order items. "
          }
        },
        "description": "An identified part of the related product order item. "
      },
      "StatusReason": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the modification reason "
          },
          "extensions": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          }
        },
        "description": "The reason of the product state. This entity is populated only when the referenced product is a product in the inventory. "
      },
      "StockItem": {
        "type": "object",
        "properties": {
          "stockAvailabilityStatus": {
            "type": "string",
            "description": "Stock availability levels for the product - *inStock*, *outOfStock*, *lowStock*, and *unavailable* "
          },
          "stockAvailabilityQuantity": {
            "type": "integer",
            "description": "Actual number of items in stock for this product ",
            "format": "int32"
          }
        },
        "description": "Stock information of the product in the stock management system "
      },
      "TaxDefinition": {
        "required": [
          "exemptionType",
          "isExemption",
          "taxJurisdiction",
          "taxRate",
          "taxType",
          "vaidFor"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The display name of tax type"
          },
          "taxRate": {
            "type": "number",
            "description": "Rate of tax",
            "format": "float"
          },
          "taxType": {
            "type": "string",
            "description": "VAT/GST etc"
          },
          "category": {
            "type": "string",
            "description": "Luxury/Standard etc"
          },
          "isExemption": {
            "type": "boolean",
            "description": "Where the tax definition has exemption defined on it"
          },
          "exemptionType": {
            "type": "string",
            "description": "Exemption type. Valid Values - Customer, Service, Jurisdiction, None."
          },
          "vaidFor": {
            "$ref": "#/components/schemas/TimePeriod"
          },
          "taxJurisdiction": {
            "$ref": "#/components/schemas/TaxJurisdiction"
          }
        },
        "description": "Tax definition"
      },
      "TaxJurisdiction": {
        "required": [
          "level",
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "level": {
            "type": "string"
          },
          "id": {
            "type": "string"
          }
        }
      },
      "Validation": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "description": "Validation status "
          },
          "validationMessage": {
            "type": "array",
            "description": "Validation message ",
            "items": {
              "$ref": "#/components/schemas/ValidationMessage"
            }
          },
          "configurationChange": {
            "type": "array",
            "description": "Configuration change ",
            "items": {
              "$ref": "#/components/schemas/ConfigurationChange"
            }
          }
        },
        "description": "Validation result that is associated with the product order "
      },
      "ValueMetadata": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the metadata "
          },
          "value": {
            "type": "string",
            "description": "Value of the metadata "
          },
          "metadataType": {
            "type": "string",
            "description": "Type of the metadata "
          },
          "sourceValue": {
            "type": "string",
            "description": "Value of the metadata source "
          }
        },
        "description": "Catalog and operational metadata "
      },
      "PotentialPromotionQualification": {
        "type": "object",
        "properties": {
          "qualificationType": {
            "type": "string",
            "description": "The stage at which the evaluation is requested for the promotion qualification item <<enumeration>> QualificationType- catalog, cart, order, product "
          },
          "channel": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ChannelRef"
            }
          },
          "action": {
            "$ref": "#/components/schemas/Action"
          },
          "productOrder": {
            "$ref": "#/components/schemas/ProductOrderRef"
          },
          "potentialQualificationItem": {
            "type": "array",
            "description": "An Item for which the promotion qualification is requested ",
            "items": {
              "$ref": "#/components/schemas/PotentialQualificationItem"
            }
          },
          "relatedParty": {
            "type": "array",
            "description": "A reference to the RelatedPartyRef. Currently expected to get customer Id in the request if exists ",
            "items": {
              "$ref": "#/components/schemas/RelatedPartyRef"
            }
          },
          "context": {
            "type": "array",
            "description": "A reference to the Qualification Context ",
            "items": {
              "$ref": "#/components/schemas/Context"
            }
          }
        },
        "description": "The envelope for all promotion qualification items for which the calling application requests the promotion qualification to be performed "
      },
      "PotentialQualificationItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The instance ID of the promotion qualification item "
          },
          "productOffering": {
            "$ref": "#/components/schemas/ProductOfferingRef"
          },
          "characteristic": {
            "type": "array",
            "description": "A reference to the product offerring characteristics. ",
            "items": {
              "$ref": "#/components/schemas/Characteristic"
            }
          },
          "potentialPromotion": {
            "type": "array",
            "description": "A reference to the Potential Promotion instance with details ",
            "items": {
              "$ref": "#/components/schemas/PotentialPromotion"
            }
          }
        },
        "description": "The potential qualification item, which can represent the catalog item, product order item, shopping cart item, or configuration item. For a bundled structure, the potential promotions are returned. "
      }
    }
  }
}