Megaventory API v2017a

<back to all web services

PricingRuleUpdate

The following routes are available for this service:
POST/PricingRule/PricingRuleUpdateInserts a pricing rule or updates a current pricing rule.Uses your API Key and applies a mvRecordAction value on an mvPricingRule object. We can insert the mvPricingRule object we specified using "Insert" as our mvRecordAction. We can update a current one using "Update", we can insert it if it doesn't already exist, update it if it does using "InsertOrUpdate" and we can insert new fields or update non-empty fields of the object using "InsertOrUpdateNonEmptyFields". Optionally, you can use mvInsertUpdateDeleteSourceApplication when an external application ( eg WooCommerce ) is the one that triggers the PricingRuleUpdate call. PricingRuleId cannot be updated.

Examples:



A.

Insert a new pricing rule.
PricingRuleUsedByModule field is required for the insert operation and its value should be either 1 for Sales Pricing Rule or 2 for Purchase Pricing Rule.

Value:

 {
   "mvPricingRule": {
      "PricingRuleName": "Sales Pricing Rule",
      "PricingRuleCurrency": "EUR",
      "PricingRuleBasePrice": "DefaultSalesPrice",
      "PricingRuleSpExchangeRate": 2,
      "PricingRuleUsedByModule": 1
   },
   "mvRecordAction": "Insert"
}
  


Response:

 {
   "mvPricingRule": {
      "PricingRuleID": 174,
      "PricingRuleName": "Sales Pricing Rule",
      "PricingRuleCurrency": "EUR",
      "PricingRuleBasePrice": "DefaultSalesPrice",
      "PricingRuleSpExchangeRate": 2,
      "PricingRuleSpecificEntities": false,
      "PricingRuleSpecificProducts": false,
      "PricingRuleSpecificProductCategories": false,
      "PricingRuleDateModified": "/Date(-62135596800000-0000)/",
      "PricingRuleDateCreated": "/Date(1576844453705+0200)/",
      "PricingRuleUsedByModule": 1
   },
   "ResponseStatus": {
      "ErrorCode": "0"
   },
   "entityID": 174
}
 

B.

Update information on the pricing rule above. PricingRuleID is mandatory and cannot be updated.

Value:

 {
   "mvPricingRule": {
      "PricingRuleID": 174,
      "PricingRuleName": "Sales Pricing Rule",
      "PricingRuleCurrency": "EUR",
      "PricingRuleBasePrice": "DefaultSalesPrice",
      "PricingRuleSpExchangeRate": 2,
      "PricingRuleSpecificEntities": true,
      "PricingRuleSpecificProductCategories": false,
      "PricingRuleStartDate": "3/28/2021, 1:33:11 PM",
      "PricingRuleEndDate": "5/28/2021, 1:33:11 PM"
   },
   "mvRecordAction": "Update"
}
  


Response:

 {
   "mvPricingRule": {
    "PricingRuleID": 174,
    "PricingRuleName": "Sales Pricing Rule",
    "PricingRuleCurrency": "EUR",
    "PricingRuleBasePrice": "DefaultSalesPrice",
    "PricingRuleSpExchangeRate": 2,
    "PricingRuleSpecificEntities": true,
    "PricingRuleSpecificProducts": false,
    "PricingRuleSpecificProductCategories": false,
    "PricingRuleStartDate": "/Date(1546639200000+0200)/",
    "PricingRuleEndDate": "/Date(1548367200000+0200)/",
    "PricingRuleDateModified": "/Date(-62135596800000-0000)/",
    "PricingRuleDateCreated": "/Date(-62135596800000-0000)/",
    "PricingRuleUsedByModule": 1
   },
   "ResponseStatus": {
      "ErrorCode": "0"
   },
   "entityID": 174
}
 

To override the Content-type in your clients HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /json/reply/PricingRuleUpdate HTTP/1.1 
Host: api.megaventory.com 
Content-Type: application/json
Content-Length: length

{"APIKEY":"String","mvPricingRule":{"PricingRuleID":0,"PricingRuleName":"String","PricingRuleCurrency":"String","PricingRuleBasePrice":"DefaultSalesPrice","PricingRuleSpExchangeRate":0,"PricingRuleAddPercent":0,"PricingRuleAddFixedAmount":0,"PricingRuleUnitPriceRoundingDigits":0,"PricingRuleDefaultDiscountId":0,"PricingRuleDefaultTaxId":0,"PricingRuleSpecificEntities":false,"PricingRuleSpecificProducts":false,"PricingRuleSpecificProductCategories":false,"PricingRuleStartDate":"\/Date(-62135596800000-0000)\/","PricingRuleEndDate":"\/Date(-62135596800000-0000)\/","PricingRuleMinQty":0,"PricingRuleMaxQty":0,"PricingRuleDateModified":"\/Date(-62135596800000-0000)\/","PricingRuleDateCreated":"\/Date(-62135596800000-0000)\/","PricingRuleUsedByModule":0},"mvRecordAction":"Insert","mvInsertUpdateDeleteSourceApplication":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"mvPricingRule":{"PricingRuleID":0,"PricingRuleName":"String","PricingRuleCurrency":"String","PricingRuleBasePrice":"DefaultSalesPrice","PricingRuleSpExchangeRate":0,"PricingRuleAddPercent":0,"PricingRuleAddFixedAmount":0,"PricingRuleUnitPriceRoundingDigits":0,"PricingRuleDefaultDiscountId":0,"PricingRuleDefaultTaxId":0,"PricingRuleSpecificEntities":false,"PricingRuleSpecificProducts":false,"PricingRuleSpecificProductCategories":false,"PricingRuleStartDate":"\/Date(-62135596800000-0000)\/","PricingRuleEndDate":"\/Date(-62135596800000-0000)\/","PricingRuleMinQty":0,"PricingRuleMaxQty":0,"PricingRuleDateModified":"\/Date(-62135596800000-0000)\/","PricingRuleDateCreated":"\/Date(-62135596800000-0000)\/","PricingRuleUsedByModule":0},"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String"}]},"entityID":0,"InternalErrorCode":"String"}