ERP REST Items

Following interfaces are available to work with items.

 

 

ReceiveItems/Create

URL

{url}/ERP/ReceiveItems/Create

Type POST

Description Method is used to create new items. Values entered must be valid according system’s business validations. Values marked in bold must point to existing entity ID from the system.

Value Mandatory Enum Comment
Id Yes
Name Yes
Description Yes Changes default description. Additional languages cannot be specified using ERP interface
Type Yes “Consumable”, “Durable”
Status Yes “Defined”, “PhaseIn”, “Released”, “PhaseOut”, “Obsolete”
Classification Yes “A”, “B”, “C”
CategoryId No When specified, category defined by Category array will be ignored
GtcClassification No
DispensePackageQuantity No
IsQouted No
IsSerialized No True possible only when Type=Durable
IsAssembly No True possible only when Type=Durable
CriticalLevel No
AlternativeItemId No
VendorId No Reference to vendor ID Mandatory when Status is not Defined Not available for assemblies
VendorOrderCode No Mandatory when Status is not Defined Not available for assemblies
PricePerPiece No Mandatory when Status is not Defined Not available for assemblies
BarCode No
PurchasePackageQuantity No Mandatory when Status is not Defined Not available for assemblies
LeadTimeUnits No “Months”, “Weeks”, “Days”, “Hours” Mandatory when LeadTimeValue is defined Not available for assemblies
LeadTimeValue No Mandatory when LeadTimeUnits is defined Not available for assemblies
ManufacturerId No Reference to manufacturer ID Not available for assemblies
ManufacturerOrderCode No Not available for assemblies
UsageCostStructure Yes “PercentageOfStandardCost”, “FixedPerPick”, “PerTimeInCa”, “PerItemState” Must be set to PercentageOfStandardCost when Type=Consumable
Cost Yes Must be set to 100 when Type=Consumable
TimeSpecificationUnit No “Months”, “Weeks”, “Days”, “Hours” Mandatory when UsageCostStructure=PerTimeInCa. Cannot be specified when other UsageCostStructure is set.
TimeSpecificationValue No Mandatory when UsageCostStructure=PerTimeInCa. Cannot be specified when other UsageCostStructure is set.
HasServiceOrCalibration No True possible only when Type=Durable
ServiceVendorId No Techinal vendor ID (MasterData.Vendorx) Mandatory when HasServiceCalibration=true
ServiceCode No Mandatory when HasServiceCalibration=true
ServicePrice No Mandatory when HasServiceCalibration=true Not available for assemblies
TimeInterval No Available only when HasServiceCalibration=true and IsSerialized=true
DueDate No Available only when HasServiceCalibration=true and IsSerialized=true
TimeAfterFirstUseUnit No “Months”, “Weeks”, “Days”, “Hours” Available only when HasServiceCalibration=true and IsSerialized=true
TimeAfterFirstUseValue No Mandatory when TimeAfterFirstUseUnit is defined
LeadTimeUnit No “Months”, “Weeks”, “Days”, “Hours” Available only when HasServiceCalibration=true
LeadTimeValue No Madatory when LeadTimeUnit is defined
NumberOfTimesUsed No Available only when HasServiceCalibration=true and IsSerialized=true
TimePicked No Available only when HasServiceCalibration=true and IsSerialized=true
MinQuantityForService No
HasValueAddedServices No
ValueAddedServices – Code No Mandatory when HasValueAddedServices=true
ValueAddedServices – TypeCode No Mandatory when HasValueAddedServices=true
ValueAddedServices – Content No
SpareParts – SparePartId Yes (if spare part is defined) Mandatory for each object in SpareParts array
SpareParts – Quantity Yes (if spare part is defined) Mandatory for each object in SpareParts array
SpareParts – Position Yes (if spare part is defined) Mandatory for each object in SpareParts array
AssemblyItems – AssemblyItemId Yes (if assembly item is defined) Mandatory for each object in AssemblyItems array. Could point only to items with IsAssembly=false Can be specified only for assembly
AssemblyItems – Quantity Yes (if assembly item is defined) Mandatory for each object in AssemblyItems array.
AssemblyItems – Positions Yes (if assembly item is defined) Mandatory for each object in AssemblyItems array.
CustomFields – FieldName No FieldName must match custom field name from system settings. Up to three custom fields can be defined. If FieldName cannot be found within custom fields, information is ignored.
Category No Reference to category by name within item own category hierarchy. Order if categories in array needs to correspond with existing category hierarchy. Ignored when CategoryId is specified.

Schema Schema illustrates maximum allowed length for string types, which is supported to import by the system. Numbers must be integer if not specified otherwise. Type information are marked orange in the schema.

[  {  "Id": "string", 50  "Name": "string", 100  "Description": "string", 400  "Type": "string", enum ("Consumable", "Durable")  "Status": "string", enum ("Defined", "PhaseIn", "Released", "PhaseOut", "Obsolete")  "Classification": "string", enum ("A", "B", "C")  "CategoryId": "string", 50  "GtcClassification": "string", 50  "DispensePackageQuantity": 0,  "IsQuoted": true,  "IsSerialized": true,  "IsAssembly": true,  "CriticalLevel": 0,  "AlternativeItemId": "string", 50, item ID from item detail  "VendorId": "string", 50, vendor ID from vendor detail  "VendorOrderCode": "string", 50  "PricePerPiece": 0, decimal  "BarCode": "string", 50  "PurchasePackageQuantity": 0,  "LeadTimeUnits": "string", enum ("Months", "Weeks", "Days", "Hours")  "LeadTimeValue": 0,  "ManufacturerId": "string", 50, manufacturer ID from manufacturer detail  "ManufacturerOrderCode": "string", 50  "UsageCostStructure": "string", enum ("PercentageOfStandardCost", "FixedPerPick", "PerTimeInCa", "PerItemState")  "Cost": 0, decimal  "TimeSpecificationUnit": "string", enum ("Months", "Weeks", "Days", "Hours")  "TimeSpecificationValue": 0,  "HasServiceOrCalibration": true,  "ServiceCalibration": {  "ServiceVendorId": "string", 50, vendor ID from vendor detail  "ServiceCode": "string", 50  "ServicePrice": 0, decimal  "TimeInterval": {  "Hours": 0,  "Days": 0,  "Weeks": 0  },  "DueDate": "2017-11-27T12:57:40.731Z",  "TimeAfterFirstUseUnit": "string", enum ("Months", "Weeks", "Days", "Hours")  "TimeAfterFirstUseValue": 0,  "LeadTimeUnit": "string", enum ("Months", "Weeks", "Days", "Hours")  "LeadTimeValue": 0,  "NumberOfTimesUsed": 0,  "TimePicked": {  "Hours": 0,  "Days": 0,  "Weeks": 0  },  "MinQuantityForService": 0  },  "HasValueAddedServices": true,  "ValueAddedServices": {  "Code": "string", 100  "TypeCode": "string", 3  "Content": "string" 60  },  "SpareParts": [  {  "SparePartId": "string", 50, item ID from item detail  "Quantity": 0,  "Positions": "string" 50  }  ],  "AssemblyItems": [  {  "AssemblyItemId": "string", 50, item ID from item detail  "Quantity": 0,  "Positions": "string" 50  }  ],  "CustomFields": {  "FieldName": "string" 400, FieldName must match custom field name in system settings. More custom fields can be defined (up to three)  },  "Category": [  "string" 100, category name  ]  } ]

ReceiveItems/Update

URL

{url}/ERP/ReceiveItems/Update

Type POST

Description Method is used to update existing items in the system. All changes must be valid according system’s business validations. Calling can contain only information to be changed (it is not necessary to include complete item information). Values marked in bold must point to existing entity ID from the system. Minimum information to be specified is Id. All additional fields that will be sent in the calling will be updated according their values. Null or empty string sent as value will clear value from item. Complete list of information possible to update is the same like for ReceiveItems/Create interface (schema is shared):

 

Value Mandatory Enum Comment
Id Yes Must be specified always, cannot be changed
Name No
Description No Changes default description. Additional languages cannot be specified using ERP interface
Type No “Consumable”, “Durable” Cannot be changed when Statu<>”Defined”
Status No “Defined”, “PhaseIn”, “Released”, “PhaseOut”, “Obsolete” Status cannot be changed to “Defined”.
Classification No “A”, “B”, “C”
CategoryId No When specified, category defined by Category array will be ignored
GtcClassification No
DispensePackageQuantity No
IsQouted No
IsSerialized No Cannot be changed when Statu<>”Defined”
IsAssembly No True possible only when Type=Durable
CriticalLevel No
AlternativeItemId No
VendorId No Reference to vendor ID Cannot be removed when Statu<>”Defined” Cannot be specified for assemblies
VendorOrderCode No Cannot be removed when Statu<>”Defined” Cannot be specified for assemblies
PricePerPiece No Cannot be removed when Statu<>”Defined” Cannot be specified for assemblies
BarCode No
PurchasePackageQuantity No Cannot be removed when Statu<>”Defined” Cannot be specified for assemblies
LeadTimeUnits No “Months”, “Weeks”, “Days”, “Hours” Cannot be removed when LeadTimeValue is defined Cannot be specified for assemblies
LeadTimeValue No Cannot be removed when LeadTimeUnits is defined Cannot be specified for assemblies
ManufacturerId No Reference to manufacturer ID Cannot be specified for assemblies
ManufacturerOrderCode No Cannot be specified for assemblies
UsageCostStructure No “PercentageOfStandardCost”, “FixedPerPick”, “PerTimeInCa”, “PerItemState” Must be set to PercentageOfStandardCost when Type=Consumable
Cost No Must be set to 100 when Type=Consumable
TimeSpecificationUnit No “Months”, “Weeks”, “Days”, “Hours” Cannot be removed when UsageCostStructure=PerTimeInCa. Cannot be specified when other UsageCostStructure is set.
TimeSpecificationValue No Cannot be removed when UsageCostStructure=PerTimeInCa. Cannot be specified when other UsageCostStructure is set.
HasServiceOrCalibration No True possible only when Type=Durable
ServiceVendorId No Techinal vendor ID (MasterData.Vendorx) Cannot be removed when HasServiceCalibration=true
ServiceCode No Cannot be removed when HasServiceCalibration=true
ServicePrice No Cannot be removed when HasServiceCalibration=true
TimeInterval No Available only when HasServiceCalibration=true and IsSerialized=true
DueDate No Available only when HasServiceCalibration=true and IsSerialized=true
TimeAfterFirstUseUnit No “Months”, “Weeks”, “Days”, “Hours” Available only when HasServiceCalibration=true and IsSerialized=true
TimeAfterFirstUseValue No Cannot be removed when TimeAfterFirstUseUnit is defined
LeadTimeUnit No “Months”, “Weeks”, “Days”, “Hours” Cannot be removed when HasServiceCalibration=true
LeadTimeValue No Cannot be removed when LeadTimeUnit is defined
NumberOfTimesUsed No Available only when HasServiceCalibration=true and IsSerialized=true
TimePicked No Available only when HasServiceCalibration=true and IsSerialized=true
MinQuantityForService No
HasValueAddedServices No
ValueAddedServices – Code No Mandatory when HasValueAddedServices=true
ValueAddedServices – TypeCode No Mandatory when HasValueAddedServices=true
ValueAddedServices – Content No
SpareParts – SparePartId Yes (if spare part is defined) When SpareParts array is not sent, no change is made on existing spare parts When SpareParts is sent as empty array, all spare parts are removed When SpareParts array contains set of item IDs, existing spare parts are removed and new spare parts set according these IDs
SpareParts – Quantity Yes (if spare part is defined)
SpareParts – Position Yes (if spare part is defined)
AssemblyItems – AssemblyItemId Yes (if assembly item is defined) When AssemblyItems array is not sent, no change is made on existing spare parts When AssemblyItems is sent as empty array, all assembly items are removed When AssemblyItems array contains set of item IDs, existing assembly items are removed and new assembly items are set according these Ids
AssemblyItems – Quantity Yes (if assembly item is defined)
AssemblyItems – Positions Yes (if assembly item is defined)
CustomFields – FieldName No FieldName must match custom field name from system settings. Up to three custom fields can be defined. If FieldName cannot be found within custom fields, information is ignored. If existing custom field is not sent in update request, no change is made on this field.
Category No Reference to category by name within item own category hierarchy. Order if categories in array needs to correspond with existing category hierarchy. Ignored when CategoryId is specified.

Schema Schema illustrates maximum allowed length for string types, which is supported to import by the system. Numbers must be integer if not specified otherwise. Type information are marked orange in the schema.

[  {  "Id": "string", 50  "Name": "string", 100  "Description": "string", 400  "Type": "string", enum ("Consumable", "Durable")  "Status": "string", enum ("Defined", "PhaseIn", "Released", "PhaseOut", "Obsolete")  "Classification": "string", enum ("A", "B", "C")  "CategoryId": "string", 50  "GtcClassification": "string", 50  "DispensePackageQuantity": 0,  "IsQuoted": true,  "IsSerialized": true,  "IsAssembly": true,  "CriticalLevel": 0,  "AlternativeItemId": "string", 50, item ID from item detail  "VendorId": "string", 50, vendor ID from vendor detail  "VendorOrderCode": "string", 50
  "PricePerPiece": 0, decimal  "BarCode": "string", 50  "PurchasePackageQuantity": 0,  "LeadTimeUnits": "string", enum ("Months", "Weeks", "Days", "Hours")  "LeadTimeValue": 0,  "ManufacturerId": "string", 50, manufacturer ID from manufacturer detail  "ManufacturerOrderCode": "string", 50  "UsageCostStructure": "string", enum ("PercentageOfStandardCost", "FixedPerPick", "PerTimeInCa", "PerItemState")  "Cost": 0, decimal  "TimeSpecificationUnit": "string", enum ("Months", "Weeks", "Days", "Hours")  "TimeSpecificationValue": 0,  "HasServiceOrCalibration": true,  "ServiceCalibration": {  "ServiceVendorId": "string", 50, vendor ID from vendor detail  "ServiceCode": "string", 50  "ServicePrice": 0, decimal  "TimeInterval": {  "Hours": 0,  "Days": 0,
  "Weeks": 0  },  "DueDate": "2017-11-27T12:57:40.731Z",  "TimeAfterFirstUseUnit": "string", enum ("Months", "Weeks", "Days", "Hours")  "TimeAfterFirstUseValue": 0,  "LeadTimeUnit": "string", enum ("Months", "Weeks", "Days", "Hours")  "LeadTimeValue": 0,  "NumberOfTimesUsed": 0,  "TimePicked": {  "Hours": 0,  "Days": 0,  "Weeks": 0  },  "MinQuantityForService": 0  },  "HasValueAddedServices": true,  "ValueAddedServices": {  "Code": "string", 100
  "TypeCode": "string", 3  "Content": "string" 60  },  "SpareParts": [  {  "SparePartId": "string", 50, item ID from item detail  "Quantity": 0,  "Positions": "string" 50  }  ],  "AssemblyItems": [  {  "AssemblyItemId": "string", 50, item ID from item detail  "Quantity": 0,  "Positions": "string" 50  }  ],  "CustomFields": {  "FieldName": "string" 400, FieldName must match custom field name in system settings. More custom fields can be defined (up to three)
  },  "Category": [  "string" 100, category name  ]  } ]

ReceiveItems/GetRequestResult

After API method is successfully called (response code 200), GUID of the request is returned in response. This GUID can be used to check status of the request.

URL

{url}/ERP/ReceiveItems/GetRequestResult

Type GET Parameters

Key Value
requestGuid
GUID returned by calling POST method

Description Method returns result of create/update method based on GUID of previous calling. For the request, following statuses can be shown:

  • ‘Created’ – Request has been received but it has not been added to task queue yet
  • ‘Ready’ – Request has been added to task queue and is currently waiting to be executed
  • ‘Running’ – Changes are currently in progress according the request
  • ‘Completed’ – All changes required by the request has been finished
  • ‘Failed’ – Request has failed to be performed

All changes are described in Result array:

  • ‘Errors’ – Object has not been created/updated/deleted due do validation error
  • ‘Created’ – Objects successfully created
  • ‘Updated’ – Objects successfully updated
  • ‘Deleted’ – Objects successfully been deleted

If any validation errors are found, these errors are listed separately for each object referring to invalid parameter.

Schema

{  "Message": "string",  "Status": "Created",  "Result": {  "Errors": [  "string"  ],  "CreatedItems": [  "string"  ]  } }
Was this article helpful?

Related Articles

Need Support?

Can't find the answer you're looking for?
Contact Support