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" ] } }