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 & 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
}
}
}
}
Updated almost 2 years ago