Product Information

For the past 3 years, Shieldware, Inc. has been using the Cleverbridge platform to manage its product information. This has created certain challenges for their sales team, who frequently need to rely on Salesforce for product information and don't have time to cross-check this information with the data in the platform. To save time and ensure that the sales team always has accurate product and pricing information, Shieldware decides to invest development efforts into integrating their Salesforce account with the Cleverbridge GraphQL API. This integration allows the Shieldware e-commerce manager to manage all of Shieldware's products from within Salesforce itself, without having to open the Commerce Assistant. Since Salesforce is now the single source of truth of Shieldware's product information, it also ensures that they always have access to the most up-to-date information about their products.

You can use the GraphQL API to manage your products and product information in the following ways:

View Information for One of your Products

To get the data stored in the Cleverbridge platform for one of your products, use the Product query object. You must provide the id of the product and specify the fields you would like to return.

Example Request

query {
  product(id: 97771) {
    id
    client {
      id
    }
    internalId
    numberOfLicenses
    backupCdAlternateName(languageIsoCodes: ["de", "en"]) {
      ...localizedString
    }
    bundleProducts {
      isHidden
      itemProduct {
        additionalNameInformation(languageIsoCodes: ["de", "en"]) {
          ...localizedString
        }
        defaultAffiliateId
        allowDynamicProductPrice
        ##baseProduct{}
        ##bundleProducts{}
        client {
          id
        }
        backupCdAlternateName(languageIsoCodes: ["de", "en"]) {
          ...localizedString
        }
        ##contentSettings{}
        defaultProductSelection {
          id
          name
        }
        ##deliverySettings{}
        ean
        excludeFromTracking
        id
        internalCategory
        internalName
        isbn
        isDependentOnOriginalProduct
        licensePeriodInMonths
        name(languageIsoCodes: ["de", "en"]) {
          ...localizedString
        }
        numberOfLicenses
        operatingSystems
        ##price{}
        productType {
          id
        }
        maximumOrderQuantity
        minimumOrderQuantity
        reportingGroup {
          id
          name
        }
        salesTaxCode {
          code
          id
          name
          parent {
            code
            id
            name
            ##parent{}
          }
        }
        shippingSet {
          id
          name
        }
        status {
          id
          name
        }
        ##subscriptionSettings{}
        supportContact {
          id
          name
        }
        trialDownloadUrl(languageIsoCodes: ["de", "en"]) {
          ...localizedString
        }
        uiLanguage(languageIsoCodes: ["de", "en"]) {
          ...localizedString
        }
        version(languageIsoCodes: ["de", "en"]) {
          ...localizedString
        }
      }
      position
      quantity
    }

    ##Product Definition ##
    productType {
      id
    }
    status {
      id
    }
    baseProduct {
      id
    }

    ## Product information ##
    name(languageIsoCodes: ["de", "en"]) {
      ...localizedString
    }
    additionalNameInformation(languageIsoCodes: ["de", "en"]) {
      ...localizedString
    }
    supportContact {
      id
      name
    }
    version(languageIsoCodes: ["de", "en"]) {
      ...localizedString
    }
    uiLanguage(languageIsoCodes: ["de", "en"]) {
      ...localizedString
    }
    operatingSystems
    operatingSystemsText(languageIsoCodes: ["de", "en"]) {
      ...localizedString
    }
    ean
    isbn

    ## Product Attributes ##
    defaultProductSelection {
      id
      name
    }
    isDependentOnOriginalProduct
    minimumOrderQuantity
    maximumOrderQuantity
    trialDownloadUrl(languageIsoCodes: ["de", "en"]) {
      ...localizedString
    }

    ## Shopping Cart Content ##
    contentSettings {
      deliveryImage {
        bytes
        id
        name
        size
      }
      deliveryTextHtml(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }
      deliveryTextPdf(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }
      description(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }
      recommendationBannerImage {
        ...localizedClientWebbinary
      }
      bigImage {
        ...localizedClientWebbinary
      }
      smallImage {
        ...localizedClientWebbinary
      }
      mediumImage {
        ...localizedClientWebbinary
      }
      popupCartInformation(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }
      priceScaleNoteHtml(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }
      shortDescription(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }
      systemRequirements(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }
    }

    ## Delivery ##
    deliverySettings {
      deliveryInformation(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }
      deliveryNote(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }
      keyTemplate(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }
      keyTemplateForEmail(languageIsoCodes: ["de", "en"]) {
        ...localizedString
      }

      productDeliveries {
        availabilityInMonths
        copyOnRecurringBilling
        deliveryType {
          id
        }
        executeOnInitialPurchase
        executeOnRecurringBilling

        ## keyDeliveryOptions
        keyDeliveryOptions {
          keyGenerator {
            id
            name
            keyGeneratorType {
              id
              name
            }
          }
          keyList {
            id
            name
          }
          keyResultType {
            id
            name
          }
          separatePidPerQuantityUnit
          useKeyTemplate
        }

        ## keyDownloadOptions ##
        downloadDeliveryOptions {
          downloadFile {
            fileName
            id
          }

          description {
            language {
              isoCode
              name
            }
            value
          }

          language {
            isoCode
            name
          }
          linkValidityInDays
        }

        runningNo
      }
    }

    ## Suggested Retail Price ##

    ## Price options ##
    allowDynamicProductPrice
    shippingSet {
      id
      name
    }

    ## Base Price ##
    price {
      id
      isGross
      priceAbsoluteValues {
        currency {
          isoCode
          symbol
        }
        interval
        quantity
        value
      }
      volumePricingMethod {
        id
        name
      }
      baseCurrency {
        isoCode
        symbol
      }
    }

    ## Subscription Options ##
    subscriptionSettings {
      allowDeactivation
      deactivationProductList {
        id
        name
      }
      initialInterval {
        intervalPeriod
        value
      }
      licenseType {
        id
        name
      }
      recurrenceCount
      recurringInterval {
        intervalPeriod
        value
      }
      startNewIntervalOnPayment
    }
  }
}

fragment localizedString on LocalizedString {
  language {
    isoCode
    name
  }
  value
}

fragment localizedClientWebbinary on LocalizedClientWebbinary {
  clientWebbinary {
    bytes
    id
    name
    size
  }
  language {
    isoCode
    name
  }
}

The API call returns the product object with the requested fields. You can use this information to update your internal product catalog or another resource of your choice.

Example Response

{
  "data": {
    "product": {
      "id": 97771,
      "client": {
        "id": 864
      },
      "internalId": null,
      "numberOfLicenses": 5,
      "backupCdAlternateName": [
        {
          "language": null,
          "value": ""
        }
      ],
      "bundleProducts": [],
      "productType": {
        "id": "PRODUCT"
      },
      "status": {
        "id": "FULLY_AVAILABLE"
      },
      "baseProduct": {
        "id": 97769
      },
      "name": [
        {
          "language": {
            "isoCode": "en",
            "name": "English"
          },
          "value": "Internet Security Basic Extended"
        },
        {
          "language": {
            "isoCode": "de",
            "name": "German"
          },
          "value": "Internet Security Basic Extended"
        }
      ],
      "additionalNameInformation": [
        {
          "language": {
            "isoCode": "en",
            "name": "English"
          },
          "value": "For your home"
        },
        {
          "language": {
            "isoCode": "de",
            "name": "German"
          },
          "value": "FĂĽr zu Hause"
        }
      ],
      "supportContact": {
        "id": 1625,
        "name": "Default"
      },
      "version": [
        {
          "language": {
            "isoCode": "de",
            "name": "German"
          },
          "value": "Kostenpflichtige Personal-Vollversion (B2C)"
        },
        {
          "language": {
            "isoCode": "en",
            "name": "English"
          },
          "value": "Personal full, paid version (B2C)"
        }
      ],
      "uiLanguage": [
        {
          "language": null,
          "value": ""
        }
      ],
      "operatingSystems": [
        ""
      ],
      "operatingSystemsText": [
        {
          "language": null,
          "value": ""
        }
      ],
      "ean": null,
      "isbn": null,
      "defaultProductSelection": {
        "id": 2516,
        "name": "Good Better Best Product Selection"
      },
      "isDependentOnOriginalProduct": true,
      "minimumOrderQuantity": null,
      "maximumOrderQuantity": 5,
      "trialDownloadUrl": [
        {
          "language": null,
          "value": ""
        }
      ],
      "contentSettings": {
        "deliveryImage": null,
        "deliveryTextHtml": [
          {
            "language": {
              "isoCode": "en",
              "name": "English"
            },
            "value": "Download"
          },
          {
            "language": {
              "isoCode": "de",
              "name": "German"
            },
            "value": "Download"
          }
        ],
        "deliveryTextPdf": [
          {
            "language": {
              "isoCode": "en",
              "name": "English"
            },
            "value": "Download"
          },
          {
            "language": {
              "isoCode": "de",
              "name": "German"
            },
            "value": "Download"
          }
        ],
        "description": [
          {
            "language": {
              "isoCode": "en",
              "name": "English"
            },
            "value": "Internet Security Basic Extended offers virus protection, anti-phishing tools, mail protection, and identity theft protection. "
          },
          {
            "language": {
              "isoCode": "de",
              "name": "German"
            },
            "value": "Internet Security Basic Extended bietet Virenschutz, Anti-Phishing-Tools, Mailschutz sowie Schutz vor Identitätsdiebstahl."
          }
        ],
        "recommendationBannerImage": [
          {
            "clientWebbinary": {
              "bytes": 12659,
              "id": 58435,
              "name": "GenericBoxshotGreenMedium.png",
              "size": "100 x 130"
            },
            "language": {
              "isoCode": "en",
              "name": "English"
            }
          }
        ],
        "bigImage": [
          {
            "clientWebbinary": {
              "bytes": 46570,
              "id": 58432,
              "name": "GenericBoxshotGreenLarge.png",
              "size": "240 x 312"
            },
            "language": {
              "isoCode": "en",
              "name": "English"
            }
          }
        ],
        "smallImage": [
          {
            "clientWebbinary": {
              "bytes": 6671,
              "id": 58434,
              "name": "GenericBoxshotGreenSmall.png",
              "size": "60 x 78"
            },
            "language": {
              "isoCode": "en",
              "name": "English"
            }
          }
        ],
        "mediumImage": [
          {
            "clientWebbinary": {
              "bytes": 12659,
              "id": 58435,
              "name": "GenericBoxshotGreenMedium.png",
              "size": "100 x 130"
            },
            "language": {
              "isoCode": "en",
              "name": "English"
            }
          }
        ],
        "popupCartInformation": [
          {
            "language": {
              "isoCode": "en",
              "name": "English"
            },
            "value": "<table>\r\n  <tr>\r\n    <td><img src=/mycontent/864/GenericBoxshotGreenSmall.png></td>\r\n    <td>\r\n      <h1>Internet Security Basic Extended</h1>\r\n      <p><font color= \"green\" ><b>Anti-virus software </font></b> for personal use. This product offers virus protection, anti-phishing tools, mail protection, and identity theft protection. It removes worms and eliminates malware. Protect your Internet browsing, online banking, social networking, and more.</p><br />\r\n    </td>\r\n  </tr>\r\n</table>\r\n\r\n"
          },
          {
            "language": {
              "isoCode": "de",
              "name": "German"
            },
            "value": "<table>\r\n  <tr>\r\n    <td><img src=/mycontent/864/GenericBoxshotGreenSmall.png></td>\r\n    <td>\r\n      <h1>Internet Security Basic Extended</h1>\r\n      <p>Antivirus-Software für den persönlichen Gebrauch. Dieses Produkt bietet Virenschutz, Anti-Phishing-Tools, Mailschutz sowie Schutz vor Identitätsdiebstahl. Damit können Sie Würmer und Malware entfernen. Schützen Sie Ihren Computer, wenn Sie im Internet surfen, Online-Banking tätigen, soziale Netzwerke pflegen usw.</p><br />\r\n    </td>\r\n  </tr>\r\n</table>"
          }
        ],
        "priceScaleNoteHtml": [
          {
            "language": null,
            "value": ""
          }
        ],
        "shortDescription": [
          {
            "language": {
              "isoCode": "de",
              "name": "German"
            },
            "value": "Internet Security Basic Extended bietet Virenschutz, Anti-Phishing-Tools, Mailschutz sowie Schutz vor Identitätsdiebstahl."
          },
          {
            "language": {
              "isoCode": "en",
              "name": "English"
            },
            "value": "Internet Security Basic Extended offers virus protection, anti-phishing tools, mail protection, and identity theft protection. "
          }
        ],
        "systemRequirements": [
          {
            "language": {
              "isoCode": "en",
              "name": "English"
            },
            "value": "867 MHz or faster processor\r\n512MB of RAM; 1GB recommended"
          },
          {
            "language": {
              "isoCode": "de",
              "name": "German"
            },
            "value": "Prozessor mit 867 MHz oder schneller, 512 MB Arbeitsspeicher, 1 GB empfohlen"
          }
        ]
      },
      "deliverySettings": {
        "deliveryInformation": [
          {
            "language": {
              "isoCode": "en",
              "name": "English"
            },
            "value": "You will find detailed instructions on how to install and use your product if you click the following link:"
          },
          {
            "language": {
              "isoCode": "de",
              "name": "German"
            },
            "value": "Unter diesem Link finden Sie eine detaillierte Anleitung zur Installation und Verwendung Ihres Produkts:"
          }
        ],
        "deliveryNote": [
          {
            "language": {
              "isoCode": "en",
              "name": "English"
            },
            "value": "<p>Thank you for your order. To download and install your product, please follow these instructions:<p>\r\n<ol>\r\n    <li>\r\n\tDownload the installation file by clicking the button below.   \r\n    </li>\r\n    <li>\r\n\tDouble-click on the downloaded file to begin installation. \r\n    </li>\r\n\t<li>\r\n\tFollow the onscreen installation instructions. \r\n    </li>\r\n    <li>\r\n\tWhen prompted, enter your license key.<br />\r\n   </li>\r\n</ol>\r\n<br>\r\n</br>\r\n<p>Please note: The license key is also included in your confirmation email.</p></p></p>"
          },
          {
            "language": {
              "isoCode": "de",
              "name": "German"
            },
            "value": "<p>Vielen Dank für Ihre Bestellung. Gehen Sie folgendermaßen vor, um das Produkt herunterzuladen und zu installieren:</p>\r\n<ol>\r\n    <li> Laden Sie die Installationsdatei herunter, indem Sie auf die Schaltfläche unten klicken. </li>\r\n    <li> Doppelklicken Sie auf die heruntergeladene Datei, um die Installation zu starten. </li>\r\n\t<li> Befolgen Sie die Installationsanleitung auf dem Bildschirm. </li>\r\n    <li> Geben Sie den Lizenzschlüssel ein, wenn Sie dazu aufgefordert werden.</li>\r\n</ol>\r\n</br>\r\n</br>\r\n<p>Beachten Sie: Der Lizenzschlüssel ist auch in Ihrer Bestätigungs-E-Mail enthalten.</p>"
          }
        ],
        "keyTemplate": [
          {
            "language": {
              "isoCode": "en",
              "name": "English"
            },
            "value": "<RegName>, here is your product key for\r\nyour purchase of <ProductName>. \r\n\r\n<Key>"
          },
          {
            "language": {
              "isoCode": "de",
              "name": "German"
            },
            "value": "<RegName>, hier ist der LizenschlĂĽssel fĂĽr Ihr Produkt <ProductName>. <Key>"
          }
        ],
        "keyTemplateForEmail": [
          {
            "language": null,
            "value": ""
          }
        ],
        "productDeliveries": [
          {
            "availabilityInMonths": null,
            "copyOnRecurringBilling": false,
            "deliveryType": {
              "id": "CLEVERBRIDGE_DELIVERS_KEY"
            },
            "executeOnInitialPurchase": false,
            "executeOnRecurringBilling": true,
            "keyDeliveryOptions": {
              "keyGenerator": null,
              "keyList": {
                "id": 14435,
                "name": "Internet Security Key List"
              },
              "keyResultType": {
                "id": "AUTO",
                "name": "Auto"
              },
              "separatePidPerQuantityUnit": false,
              "useKeyTemplate": true
            },
            "downloadDeliveryOptions": null,
            "runningNo": 1
          },
          {
            "availabilityInMonths": null,
            "copyOnRecurringBilling": false,
            "deliveryType": {
              "id": "CLIENT_DELIVERS"
            },
            "executeOnInitialPurchase": true,
            "executeOnRecurringBilling": false,
            "keyDeliveryOptions": null,
            "downloadDeliveryOptions": null,
            "runningNo": 2
          }
        ]
      },
      "allowDynamicProductPrice": true,
      "shippingSet": {
        "id": 1126,
        "name": "Europe"
      },
      "price": {
        "id": 174682,
        "isGross": true,
        "priceAbsoluteValues": [
          {
            "currency": {
              "isoCode": "USD",
              "symbol": "$"
            },
            "interval": 0,
            "quantity": 5,
            "value": 17
          },
          {
            "currency": {
              "isoCode": "GBP",
              "symbol": "ÂŁ"
            },
            "interval": 0,
            "quantity": 5,
            "value": 18.95
          },
          {
            "currency": {
              "isoCode": "GBP",
              "symbol": "ÂŁ"
            },
            "interval": 0,
            "quantity": 3,
            "value": 22.95
          },
          {
            "currency": {
              "isoCode": "HKD",
              "symbol": "HK$"
            },
            "interval": 0,
            "quantity": 3,
            "value": 0
          },
          {
            "currency": {
              "isoCode": "USD",
              "symbol": "$"
            },
            "interval": 0,
            "quantity": 3,
            "value": 15
          },
          {
            "currency": {
              "isoCode": "JPY",
              "symbol": "ÂĄ"
            },
            "interval": 0,
            "quantity": 4,
            "value": 2000
          },
          {
            "currency": {
              "isoCode": "BRL",
              "symbol": "R$"
            },
            "interval": 0,
            "quantity": 3,
            "value": 0
          },
          {
            "currency": {
              "isoCode": "GBP",
              "symbol": "ÂŁ"
            },
            "interval": 0,
            "quantity": 1,
            "value": 0
          },
          {
            "currency": {
              "isoCode": "JPY",
              "symbol": "ÂĄ"
            },
            "interval": 0,
            "quantity": 1,
            "value": 0
          },
          {
            "currency": {
              "isoCode": "USD",
              "symbol": "$"
            },
            "interval": 0,
            "quantity": 1,
            "value": 5.99
          },
          {
            "currency": {
              "isoCode": "GBP",
              "symbol": "ÂŁ"
            },
            "interval": 0,
            "quantity": 4,
            "value": 20.95
          },
          {
            "currency": {
              "isoCode": "JPY",
              "symbol": "ÂĄ"
            },
            "interval": 0,
            "quantity": 3,
            "value": 2500
          },
          {
            "currency": {
              "isoCode": "USD",
              "symbol": "$"
            },
            "interval": 0,
            "quantity": 4,
            "value": 16
          },
          {
            "currency": {
              "isoCode": "JPY",
              "symbol": "ÂĄ"
            },
            "interval": 0,
            "quantity": 5,
            "value": 1500
          }
        ],
        "volumePricingMethod": {
          "id": "PRICE_SCALE",
          "name": "All-units discount"
        },
        "baseCurrency": {
          "isoCode": "USD",
          "symbol": "$"
        }
      },
      "subscriptionSettings": {
        "allowDeactivation": true,
        "deactivationProductList": null,
        "initialInterval": {
          "intervalPeriod": "MONTHS",
          "value": 12
        },
        "licenseType": {
          "id": "UNDEFINED",
          "name": "Undefined"
        },
        "recurrenceCount": null,
        "recurringInterval": {
          "intervalPeriod": "MONTHS",
          "value": 12
        },
        "startNewIntervalOnPayment": true
      }
    }
  }
}

View Information for All of your Products

To get the data stored in the Cleverbridge platform for all of your products, use the Products query object. You must provide your clientId and specify the fields you would like to return.

Example Request

query {
  products(clientId: 864, billingType: RECURRING, productTypeIds: PRODUCT) {
    id
    names {
      value
      language {
        id
      }
    }
    price {
      priceAbsoluteValues {
        value
        currency {
          id
          name
        }
      }
    }
    numberOfLicenses
    baseProduct {
      allowDynamicProductPrice
      subscriptionSettings {
        allowDeactivation
      }
      status {
        id
      }
    }
    reportingGroup {
      id
      name
    }
    clientSalesRevenueStatistics {
      currency {
        name
        id
      }
    }
  }
}

The API call returns the products object with the requested fields. You can use this information to update the resource of your choice.

Example Response

{
  "data": {
    "products": [
      {
        "id": 97773,
        "names": [
          {
            "value": "Internet Security Enterprise",
            "language": {
              "id": "DE"
            }
          },
          {
            "value": "Internet Security Enterprise",
            "language": {
              "id": "EN"
            }
          }
        ],
        "price": {
          "priceAbsoluteValues": [
            {
              "value": 6500,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 6000,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 9500,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 81.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 89.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 69.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 65.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 85.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 80.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 60.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 60.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 9000,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 95.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 95.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 73.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 7500,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 65.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 80.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 67.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 70.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 10000,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 99.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 90.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 75.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 83.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 75.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 8500,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 99.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 70.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 9000,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 77.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 85.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 79.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 7000,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 89.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 8000,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 90.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 75.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 71.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 75.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            }
          ]
        },
        "numberOfLicenses": 1,
        "baseProduct": {
          "allowDynamicProductPrice": false,
          "subscriptionSettings": null,
          "status": {
            "id": "FULLY_AVAILABLE"
          }
        },
        "reportingGroup": {
          "id": 3558,
          "name": "B2B"
        },
        "clientSalesRevenueStatistics": {
          "currency": {
            "name": "US Dollar",
            "id": "USD"
          }
        }
      },
      {
        "id": 219375,
        "names": [
          {
            "value": "Internet Security Basic Extended 1 Day",
            "language": {
              "id": "EN"
            }
          },
          {
            "value": "Internet Security Basic Extended",
            "language": {
              "id": "DE"
            }
          }
        ],
        "price": {
          "priceAbsoluteValues": [
            {
              "value": 0,
              "currency": {
                "id": "HKD",
                "name": "Hong Kong Dollar"
              }
            },
            {
              "value": 20.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 1500,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 16,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 18.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 22.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 0,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 2000,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 0,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 5.99,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 0,
              "currency": {
                "id": "BRL",
                "name": "Brazilian Real"
              }
            },
            {
              "value": 2500,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 15,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 17,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            }
          ]
        },
        "numberOfLicenses": 5,
        "baseProduct": {
          "allowDynamicProductPrice": false,
          "subscriptionSettings": null,
          "status": {
            "id": "FULLY_AVAILABLE"
          }
        },
        "reportingGroup": {
          "id": 3559,
          "name": "B2C"
        },
        "clientSalesRevenueStatistics": {
          "currency": {
            "name": "US Dollar",
            "id": "USD"
          }
        }
      },
      {
        "id": 221565,
        "names": [
          {
            "value": "Cloudbit - 3 Years",
            "language": {
              "id": "EN"
            }
          }
        ],
        "price": {
          "priceAbsoluteValues": [
            {
              "value": 350,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            }
          ]
        },
        "numberOfLicenses": 1,
        "baseProduct": null,
        "reportingGroup": null,
        "clientSalesRevenueStatistics": {
          "currency": {
            "name": "US Dollar",
            "id": "USD"
          }
        }
      },
      {
        "id": 221564,
        "names": [
          {
            "value": "Cloudbit - 2 Years",
            "language": {
              "id": "EN"
            }
          }
        ],
        "price": {
          "priceAbsoluteValues": [
            {
              "value": 250,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            }
          ]
        },
        "numberOfLicenses": 1,
        "baseProduct": null,
        "reportingGroup": null,
        "clientSalesRevenueStatistics": {
          "currency": {
            "name": "US Dollar",
            "id": "USD"
          }
        }
      },
      {
        "id": 221561,
        "names": [
          {
            "value": "Cloudbit - 1 Day",
            "language": {
              "id": "EN"
            }
          }
        ],
        "price": {
          "priceAbsoluteValues": [
            {
              "value": 20,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            }
          ]
        },
        "numberOfLicenses": 1,
        "baseProduct": null,
        "reportingGroup": null,
        "clientSalesRevenueStatistics": {
          "currency": {
            "name": "US Dollar",
            "id": "USD"
          }
        }
      },
      {
        "id": 97770,
        "names": [
          {
            "value": "Internet Security Basic",
            "language": {
              "id": "DE"
            }
          },
          {
            "value": "Internet Security Basic",
            "language": {
              "id": "EN"
            }
          }
        ],
        "price": {
          "priceAbsoluteValues": [
            {
              "value": 0,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            }
          ]
        },
        "numberOfLicenses": 1,
        "baseProduct": {
          "allowDynamicProductPrice": false,
          "subscriptionSettings": null,
          "status": {
            "id": "FULLY_AVAILABLE"
          }
        },
        "reportingGroup": {
          "id": 3559,
          "name": "B2C"
        },
        "clientSalesRevenueStatistics": {
          "currency": {
            "name": "US Dollar",
            "id": "USD"
          }
        }
      },
      {
        "id": 98062,
        "names": [
          {
            "value": "Technical Support - Gold Level",
            "language": {
              "id": "EN"
            }
          },
          {
            "value": "Technischer Support - Gold Level",
            "language": {
              "id": "DE"
            }
          }
        ],
        "price": {
          "priceAbsoluteValues": [
            {
              "value": 0,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 0,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            },
            {
              "value": 0,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 19.95,
              "currency": {
                "id": "EUR",
                "name": "Euro"
              }
            },
            {
              "value": 19.95,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 14.95,
              "currency": {
                "id": "GBP",
                "name": "British Pound"
              }
            },
            {
              "value": 0,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            },
            {
              "value": 395,
              "currency": {
                "id": "JPY",
                "name": "Japanese Yen"
              }
            }
          ]
        },
        "numberOfLicenses": 1,
        "baseProduct": null,
        "reportingGroup": {
          "id": 3559,
          "name": "B2C"
        },
        "clientSalesRevenueStatistics": {
          "currency": {
            "name": "US Dollar",
            "id": "USD"
          }
        }
      },
      {
        "id": 221563,
        "names": [
          {
            "value": "Cloudbit - 1 Year",
            "language": {
              "id": "EN"
            }
          }
        ],
        "price": {
          "priceAbsoluteValues": [
            {
              "value": 150,
              "currency": {
                "id": "USD",
                "name": "US Dollar"
              }
            }
          ]
        },
        "numberOfLicenses": 1,
        "baseProduct": null,
        "reportingGroup": null,
        "clientSalesRevenueStatistics": {
          "currency": {
            "name": "US Dollar",
            "id": "USD"
          }
        }
      }
    ]
  }
}

Create a Product

To create a new product, use the createProduct mutation object. To successfully make this call, certain fields are required, including productType, price, salesTaxCode, and name.

Example Request

mutation {
  createProduct(input: {
    clientId: 864, 
    productType: PRODUCT, 
    price:{
      baseCurrencyId: EUR, 
      priceAbsoluteValues:{
        currencyId: EUR 
        quantity:1
        value:10}}
    salesTaxCode: "DC010500",
    name: [{languageId: EN, value: "graphql_test_product"}]
  }) 
  {
    createdProduct {
      id
    }
  }
}

To create a more complex product, many other createProduct mutation fields are at your disposal. The following is an example that includes most of the available fields for this mutation, including a variety of text strings, which have been localized in German and English.

Example Request

mutation {
  createProduct(input: {
    clientId: 864, 
    productType: PRODUCT, 
    salesTaxCode: "DC010500", 
    name: {languageId: EN, value: "graphql_test_product2"},
    status:FULLY_AVAILABLE,
    languageId:DE,
    additionalNameInformation:[{value: "additional_name_en" languageId:EN},
        {value: "additional_name_de" languageId:DE}],
    supportContactId:1627,
    backupCdAlternateName:[{value: "backup_cd_en",languageId:EN},
        {value: "backup_cd_de",languageId:DE}],
    version:[{value: "version_en",languageId:EN},
        {value: "version_de",languageId:DE}],
    uiLanguage:[{value: "version_en",languageId:EN},
        {value: "version_de",languageId:DE}],
    operatingSystemsText:[{value: "operatingSystem_en",languageId:EN},
        {value: "operatingSystem_de",languageId:DE}],
    ean:"ean_1234",
    isbn:"isbn_1234",
    defaultProductSelectionId:3038,
    ##isDependentOnMaster:,
    ##affiliateId:,
    numberOfLicenses:100,
    licensePeriodInMonths:12,
    minimumOrderQuantity:1,
    maximumOrderQuantity:12,
    trialDownloadUrl:[{value: "www.cleverbridge_trial_en",languageId:EN},
        {value: "www.cleverbridge_trial_de",languageId:DE}],
    ##reportingGroupId:,
    internalId:"graphql_test",
    internalCategory:"internal_cat",
    internalName: "internal_name",
    excludeFromTracking: false,
    price:{
      baseCurrencyId:EUR,
      isGross: false,
      volumePricingMethod:PRICE_SCALE,    
      priceAbsoluteValues:{
        currencyId:EUR,
        quantity:1,
        interval:0,
        value:10
      }
    }
    ## Suggested Retail Price
    ## Price Options
    allowDynamicProductPrice: true,
    shippingSetId:1808
    ## Subscription Options
    subscriptionSettings:{
      recurrenceCount:1
      startNewIntervalOnPayment:true
      allowDeactivation:true
      ##deactivationProductListId:,
      licenseType:UNDEFINED
      initialInterval:{value:13, intervalPeriod:MONTHS}
      recurringInterval:{value:13, intervalPeriod:MONTHS}
    }
    ## Images & Content
    contentSettings:{
        popupCartInformation:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      deliveryTextHtml:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      deliveryTextPdf:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      ##deliveryImageId:,
      priceScaleNoteHtml:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      description:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      shortDescription:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      systemRequirements:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      bigImageId:[{
        ##referencedId:""
        languageId:DE
      }],
      mediumImageId:[{
        ##referencedId:""
        languageId:DE
      }],
      smallImageId:[{
        ##referencedId:""
        languageId:DE
      }],  
      recommendationBannerImageId:[{
        ##referencedId:""
        languageId:DE
      }]
    }
     deliverySettings:{
      productDeliveries:[{
        deliveryType:CLEVERBRIDGE_DELIVERS_KEY,
        runningNo:1,
        executeOnInitialPurchase:true
        keyDeliveryOptions:{
          useKeyTemplate:true,
          keyListId:14435,
          keyResultType:AUTO
        }
      }]  
      keyTemplate:[
      {
        value:"Test_en"
        languageId:EN,
      },
      {
        value:"Test"
        languageId:DE,
      }
      ],
      keyTemplateForEmail:[{
        value:"Test_en"
        languageId:EN,
      },
      {
        value:"Test"
        languageId:DE,
      }],
      deliveryNote:[{
        value:"Test_en"
        languageId:EN,
      },
      {
        value:"Test"
        languageId:DE,
      }],
      deliveryInformation:[{
        value:"Test_en"
        languageId:EN,
      },
      {
        value:"Test"
        languageId:DE,
      }]
    }
    ##bundleProducts:[{
      ##position:
      ##quantity:
      ##isHidden:
      ##itemProductId
    ##}]
  }) 
  {
    createdProduct {
      id
    }
  }
}

The API call returns the createProduct object with the requested fields.

Example Response

{
  "data": {
    "createProduct": {
      "createdProduct": {
        "id": 221755
      }
    }
  }
}

Delete a Product

You can use the GraphQL API to delete a product from the Cleverbridge platform. To do so, use the deleteProduct mutation object. You must specify the id or the internalId of the product you would like to delete.

Example Request

mutation {
  deleteProduct(
    id: 221724
    clientId: 864
  ) {
    deletedProductId
  }
}

The API call returns the deleteProduct object with the requested fields.

Example Response

{
  "data": {
    "deleteProduct": {
      "deletedProductId": 221724
    }
  }
}

Update Product Information

To update a product, use the updateProduct mutation. You must provide the id or internalId of the product you want to update and specify the fields you would like to change. The following is an example of a basic updateProduct mutation, which changes the status of the product from FULLY-AVAILABLE to DEACTIVATED.

Example Request

mutation {
  updateProduct(input:{
    id:221756,
    status:DEACTIVATED
  }){
    updatedProduct{
      client {
        id
      }
        id}
  }
}

To create a more complex product, many other updateProduct mutation fields are at your disposal. The following is an example in which numerous product details are updated, including the product status and a variety of text strings, which have been localized in German and English.

Example Request

mutation {
  updateProduct(input: {
    id: 221756,
    clientId: 864, 
    productType: PRODUCT, 
    salesTaxCode: "DC010500", 
    name: {languageId: EN, value: "graphql_test_product10"},
    status:FULLY_AVAILABLE,
    additionalNameInformation:[{value: "additional_name_en" languageId:EN},
        {value: "additional_name_de" languageId:DE}],
    supportContactId:1627,
    backupCdAlternateName:[{value: "backup_cd_en",languageId:EN},
        {value: "backup_cd_de",languageId:DE}],
    version:[{value: "version_en",languageId:EN},
        {value: "version_de",languageId:DE}],
    uiLanguage:[{value: "version_en",languageId:EN},
        {value: "version_de",languageId:DE}],
    operatingSystemsText:[{value: "operatingSystem_en",languageId:EN},
        {value: "operatingSystem_de",languageId:DE}],
    ean:"ean_1234",
    isbn:"isbn_1234",
    defaultProductSelectionId:3038,
    ## isDependentOnMaster:,
    ## affiliateId:,
    numberOfLicenses:200,
    licensePeriodInMonths:12,
    minimumOrderQuantity:1,
    maximumOrderQuantity:12,
    trialDownloadUrl:[{value: "www.cleverbridge_trial_en",languageId:EN},
        {value: "www.cleverbridge_trial_de",languageId:DE}],
    ## reportingGroupId:,
    internalId:"graphql_test10",
    internalCategory:"internal_cat",
    internalName: "internal_name",
    excludeFromTracking: false,
    price:{
      baseCurrencyId:USD,
      isGross: true,
      volumePricingMethod:PRICE_SCALE,    
      priceAbsoluteValues:{
        currencyId:USD,
        quantity:1,
        interval:0,
        value:10
      }
    }
    ## Suggested Retail Price
    ## Price Options
    allowDynamicProductPrice: true,
    shippingSetId:1808
    ## Subscription Options
    subscriptionSettings:{
      recurrenceCount:1
      startNewIntervalOnPayment:true
      allowDeactivation:true
      ##deactivationProductListId:,
      licenseType:UNDEFINED
      initialInterval:{value:13, intervalPeriod:MONTHS}
      recurringInterval:{value:13, intervalPeriod:MONTHS}
    }
    ## Images &amp; Content
    contentSettings:{
        popupCartInformation:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      deliveryTextHtml:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      deliveryTextPdf:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      ##deliveryImageId:,
      priceScaleNoteHtml:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      description:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      shortDescription:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      systemRequirements:[{value:"Text_de", languageId:DE},
          {value:"Text_en", languageId:EN}],
      bigImageId:[{
        ##referencedId:""
        languageId:DE
      }],
      mediumImageId:[{
        ##referencedId:""
        languageId:DE
      }],
      smallImageId:[{
        ##referencedId:""
        languageId:DE
      }],  
      recommendationBannerImageId:[{
        ##referencedId:""
        languageId:DE
      }]
    }
     deliverySettings:{
      productDeliveries:[{
        deliveryType:CLEVERBRIDGE_DELIVERS_KEY,
        runningNo:1,
        executeOnInitialPurchase:true
        keyDeliveryOptions:{
          useKeyTemplate:true,
          keyListId:14435,
          keyResultType:AUTO
        }
      }]
      keyTemplate:[
      {
        value:"Test_en"
        languageId:EN,
      },
      {
        value:"Test"
        languageId:DE,
      }
      ],
      keyTemplateForEmail:[{
        value:"Test_en"
        languageId:EN,
      },
      {
        value:"Test"
        languageId:DE,
      }],
      deliveryNote:[{
        value:"Test_en"
        languageId:EN,
      },
      {
        value:"Test"
        languageId:DE,
      }],
      deliveryInformation:[{
        value:"Test_en"
        languageId:EN,
      },
      {
        value:"Test"
        languageId:DE,
      }]
    }
    ##bundleProducts:[{
      ##position:
      ##quantity:
      ##isHidden:
      ##itemProductId
    ##}]
  }) 
  {
     updatedProduct{
      client {
        id
      }
        id
    }
  }
}

The API call returns the updateProduct object with the requested fields.

Example Response

{
  "data": {
    "updateProduct": {
      "updatedProduct": {
        "client": {
          "id": 864
        },
        "id": 221756
      }
    }
  }
}