Financial Management Blogs by SAP
Get financial management insights from blog posts by SAP experts. Find and share tips on how to increase efficiency, reduce risk, and optimize working capital.
cancel
Showing results for 
Search instead for 
Did you mean: 
yogananda
Product and Topic Expert
Product and Topic Expert
991

Untitled (24).png

Note

  • Standard Integration Package is not available yet

SAP CPQ introduces from 2502 release Product REST API which includes the following operations: GET, POST, PUT, PATCH, DELETE, BULK INSERT, BULK UPDATE, and BULK DELETE. 2025-02-01_08-25-45.gif

To Create Simple Product

### 
POST {{new_url}}/api/product/v1/Products
Authorization: Bearer {{accessToken}}
Content-Type: application/json

{
  "basicInfo": {
    "id": 1056,
    "isNewVersion": null,
    "isActiveVersion": true,
    "systemId": "Metal_cpq",
    "name": "Metal",
    "aliasParentSystemId": "",
    "displayType": "Simple",
    "configurationType": "Standard",
    "productType": {
      "systemId": "Service_cpq",
      "name": "Service",
      "rank": 0
    },
    "catalogCode": "Silver",
    "unitOfMeasure": "EA",
    "description": "",
    "categories": [
      {
        "systemId": "Equipment_cpq",
        "name": "Equipment",
        "rank": 0,
        "parentSystemId": null,
        "parentName": null,
        "productBelongsToCategory": true
      }
    ],
    "createdDate": "2025-01-31T17:38:24Z",
    "modifiedDate": "2025-02-06T10:30:21Z",
    "createdBy": "RestAPI .",
    "modifiedBy": "Yogananda Yogananda",
    "image": "",
    "alternativeText": "",
    "displayTypePricing": "CustomPricing",
    "pricingCode": "",
    "price": 100.0000,
    "costBuilder": "",
    "priceBuilder": "",
    "baseRecurringPrice": 0.0000000000,
    "recurringPriceFormula": "",
    "recurringCostFormula": "",
    "recurringPricePeriodFormula": "",
    "recurringCostPeriodFormula": "",
    "isProductUsingAlternativePricing": false,
    "alternativePricing": null,
    "active": true,
    "visibleToEveryone": false,
    "permissionSystemIds": [
      "CAD_cpq_mr",
      "Nimbus_cpq_co",
      "V3version_cpq",
      "CallidusCloud_cpq",
      "Acme_cpq_ut",
      "Brazil_1_cpq"
    ],
    "permissionStartDate": null,
    "permissionEndDate": null,
    "endStatus": "None",
    "replacementProductSystemId": "",
    "replacementProductName": "",
    "productVersion": "",
    "externalId": "",
    "upc": "",
    "mpn": "",
    "inventory": 0,
    "leadTime": "",
    "familyCode": "",
    "weight": "",
    "imageLarge": "",
    "descriptionLong": "",
    "executeRulesOnce": false,
    "allowConfigurationImport": false,
    "script": "",
    "configurationTemplate": "",
    "updateAsset": false,
    "alwaysAllowRenewal": false,
    "isSyncedFromBackOffice": false,
    "orderItemType": "Sales",
    "autoRenewalIndicator": "NotRelevantForAutoRenewal",
    "descriptionBuilder": "",
    "userCanEnterQuantity": "",
    "generalItemCategoryGroup": "",
    "hasUsagePricing": null,
    "skipRelatedProductsLoading": false,
    "shippings": [
      {
        "systemId": "Standard_Shipping_cpq",
        "name": "Standard Shipping",
        "expression": ""
      },
      {
        "systemId": "Express_Shipping_cpq",
        "name": "Express Shipping",
        "expression": ""
      },
      {
        "systemId": "UPS_cpq",
        "name": "UPS",
        "expression": ""
      },
      {
        "systemId": "Fedex_cpq",
        "name": "Fedex",
        "expression": ""
      },
      {
        "systemId": "ups_next_day_cpq",
        "name": "ups next day",
        "expression": ""
      }
    ]
  },
  "attributes": [],
  "advancedRules": [],
  "simpleRules": [],
  "productValidationMessages": [],
  "localScripts": [],
  "globalScripts": [],
  "aliasAttributesInfo": null,
  "layout": null,
  "codeMatching": [],
  "translations": {
    "name": {
      "Nederlands / Dutch": "Dutch_Name",
      "Swedish - Sweden": "Swedish_Name"
    },
    "description": {
      "Nederlands / Dutch": "Dutch_Description",
      "Swedish - Sweden": "Swedish_Description"
    },
    "longDescription": {
      "Nederlands / Dutch": "Dutch_LongDescription",
      "Swedish - Sweden": "Swedish_LongDescription"
    },
    "descriptionBuilder": {},
    "attributes": []
  }
}

Once Product is created, you will receive a response with Id

###
GET {{new_url}}/api/product/v1/Products/1056
Authorization: Bearer {{accessToken}}
Content-Type: application/json

To update the particular field

### 
PATCH {{new_url}}/api/product/v1/Products/891
Authorization: Bearer {{accessToken}}
Content-Type: application/json

{
    "basicInfo": {
        "unitOfMeasure": "PCE"
    }
}

To Filter the Product

###
GET {{new_url}}/api/product/v1/Products?$filter=systemId eq 'Silver_cpq'
Authorization: Bearer {{accessToken}}
Content-Type: application/json

To get all Products

###
GET {{new_url}}/api/product/v1/Products
Authorization: Bearer {{accessToken}}
Content-Type: application/json

 To Retervie Products having Attributes, Product Rules, Product Messages..

###
GET {{new_url}}/api/product/v1/Products/309?&$expand=All
Authorization: Bearer {{accessToken}}
Content-Type: application/json

  To Retervie Products having only Attributes

###
GET {{new_url}}/api/product/v1/Products/309?&$expand=Attributes 
Authorization: Bearer {{accessToken}}
Content-Type: application/json

  To Delete a Product with passing the product id

###
DELETE {{new_url}}/api/product/v1/Products/<id>
Authorization: Bearer {{accessToken}}
Content-Type: application/json

2025-03-31_19-48-07.png

API Documentation
https://<yourcpqdomain>.cpq.cloud.sap/webapihelp/index#/ProductsIntegration

https://help.sap.com/docs/SAP_CPQ/08a7929ad06d4680b4f18cb57bc1a1d3/ac872c9ab08f4ccab3825659c7362d32....

2 Comments
marvin_pfeifer
Discoverer

@yoganandaThe translation node is already working.
Unfortunately, however, the dictionary names are still used as the key for the translations.
The translation node can be structured as follows to send translations for Name, Description, LongDescription and DescriptionBuilder, as well as attribute translations.

"translations": {
            "name": {
                "German": "name german translation"
            },
            "description": {
                "German": "description german description"
            },
            "longDescription": {},
            "descriptionBuilder": {},
            "attributes": []
        }

The new Product Integration API is not yet listed in the Business Accelerator Hub.
Has anyone already built the JSON Scheme or received it from SAP?

yogananda
Product and Topic Expert
Product and Topic Expert

@marvin_pfeifer- Thanks for pointing out, JSON Schema (OpenAPI 3.0 or Swagger file) is still not available.. I will let you know when it will be available in api.sap.com. I will update it here once updated