RamBase REST APIs
Update the details for the provided product
HTTP method | PUT |
URI | https://api.rambase.net/product/products/{productId} |
Supported formats | Xml, Html, Json (ex. $format=json) |
- URI parameter {productId} |
Product identifier
Integer, minimum 10000 |
Custom fields | Custom fields supported |
Successful HTTP status code | 200 |
API resource identifier | 2658, version 26 |
The following body must be added to the request. Mouse over fieldnames for description and other useful information about the fields. Note that fields in bold are required/mandatory.
Product
This field is optional.
>Name
Name of the product
This field is optional.
>{String}</Name>Type
Type of product
Applicable domain values can be found here
This field is optional.
>{String}</Type>Description
Description of the product
This field is optional.
>{String}</Description>ExternalReference
External reference of the product. Typically used for storing product identifier for same product in external system.
This field is optional.
>{String}</ExternalReference>CustomField1
Custom field for grouping, sorting, categorizing and other purposes.
This field is optional.
>{String}</CustomField1>CustomField2
Custom field for grouping, sorting, categorizing and other purposes.
This field is optional.
>{String}</CustomField2>CustomField3
Custom field for grouping, sorting, categorizing and other purposes
This field is optional.
>{String}</CustomField3>GlobalTradeItemNumber
Global Trade Item Number (GTIN) is a 14 digit identifier for trade items (comprising among others of the former EAN International and Uniform Code Council). Examples of types of GTIN are UPC, EAN, JAN, ISBN
Maximum value: 14
Input must match the following regular expression pattern: ([0-9])+
This field is optional.
>{String}</GlobalTradeItemNumber>Weight
The weight of the product in kilograms.
Minimum value: 0
This field is optional.
>{Decimal}</Weight>CountryOfOriginCode
Two-character code (ISO 3166) identifying the default country where the product is produced. This value is inherrited from the assigned goods reception(s). If not country of origin is specified for the goods reception(s), country of origin is retrieved from the product. If assigned to multiple goods receptions with different origin, the field will be empty.
This field is optional.
>{String}</CountryOfOriginCode>InternalNote
Internal note regardig the product. Should not be exposed to customers.
This field is optional.
>{String}</InternalNote>MoistureSensitivityLevel
Moisture sensitivity level is an electronic standard for the time period in which a moisture sensitive device can be exposed to ambient room conditions.
Applicable domain values can be found here
This field is optional.
>{String}</MoistureSensitivityLevel>PublicProductUri
Public/external product URI for more information about the product. Will typically be an URL to product details at the manufacturer web site.
Input must match the following regular expression pattern: ^(http|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?$
This field is optional.
>{String}</PublicProductUri>RequireSerialNumberBeforeShipping
If all units of this product should have a serial number before shipping, you should require serial number to be specified before shipping this product. Shipping includes supplier returns, shipping advices and stock transfers.
This field is optional.
>{Boolean}</RequireSerialNumberBeforeShipping>MeasurementUnit
Measurement unit used for this product, both in sales and purchase.
This field is optional.
>MeasurementUnitId
Measurement unit identifier
Minimum value: 100
This field is optional.
>{Integer}</MeasurementUnitId>Manufacturer
Manufacturer of the product
This field is optional.
>ManufacturerId
Manufacturer identifier
Minimum value: 1000
This field is optional.
>{Integer}</ManufacturerId>DefaultManufacturersProduct
This field is optional.
>ManufacturersProductId
Manufacturer product identifier
Minimum value: 100000
This field is optional.
>{Integer}</ManufacturersProductId>Package
This field is optional.
>PalletQuantity
Total quantity of the product that can be on a pallet
Minimum value: 0
This field is optional.
>{Integer}</PalletQuantity>PackageQuantity
Total quantity of the product within a package
Minimum value: 0
This field is optional.
>{Integer}</PackageQuantity>PackageType
Type of wrapping used for the package
Applicable domain values can be found here
This field is optional.
>{String}</PackageType>Dimensions
This field is optional.
>Width
Width of the product in centimetres
Minimum value: 0
This field is optional.
>{Decimal}</Width>Height
Height of the product in centimetres
Minimum value: 0
This field is optional.
>{Decimal}</Height>Length
Length of the product in centimetres
Minimum value: 0
This field is optional.
>{Decimal}</Length>Volume
Volume of the product in cubic centimetres. Volume is calculated automatically as L* W* H (when the volume field is empty and L,W ,H have values). Volume can also be changed manually
Minimum value: 0
This field is optional.
>{Decimal}</Volume>MainImage
Main image of the product
This field is optional.
>File
This field is optional.
>FileId
File identifier
Minimum value: 100000
This field is optional.
>{Integer}</FileId>ProductClassification
This field is optional.
>ProductClassificationId
Product classification identifier
This field is optional.
>{String}</ProductClassificationId>Production
This field is optional.
>IsTraceableMaterialOfProductUnit
During production of a product structure, each produced unit generates a list of tracable materials included in the finished unit. When this value is true, this product is included in the list of tracable materials.
This field is optional.
>{Boolean}</IsTraceableMaterialOfProductUnit>IsManufacturedInBatches
Products is either manufactured in batch product units, or single product units. When manufactured as single, each production unit of a production work order should result in seperate product units. When manufactured in batches, all production units from one production work order should result in one common product unit.
This field is optional.
>{Boolean}</IsManufacturedInBatches>NeedsMaterialReplacementToRelease
You can add a dummy article in productions which you replace with the actual product before production starts. This function is used in situations where it is undecided which product will be used in the final production.
This field is optional.
>{Boolean}</NeedsMaterialReplacementToRelease>PlanningCategory
Planning category
Applicable domain values can be found here
This field is optional.
>{String}</PlanningCategory>ManufacturingArea
This field is optional.
>ManufacturingAreaId
Manufacturing area identifier
Minimum value: 100000
This field is optional.
>{Integer}</ManufacturingAreaId>Service
This field is optional.
>ServiceInterval
Service template of the product. This template will be used when performing service for this product.
This field is optional.
>ServiceIntervalId
Service interval identifier
Minimum value: 100000
This field is optional.
>{Integer}</ServiceIntervalId>Sales
This field is optional.
>Type
Defines if an article is of one of the types: Sales, Sales and rental, Rental, Subscription
Applicable domain values can be found here
This field is optional.
>{Integer}</Type>AssignInMultipleOf
Sometimes the products are packed together in a way that makes it preferrable to keep them together when selling. When RamBase starts the process of assigning sales to stock or purchase backlog, this field is taken into consideration. If the available quantity is not in this multiple, the rest quantity will be requested for procurement.
Ex. a product is set up to be assigned in multiple of 3. When selling 7 pcs of this product, 6 is assigned to stock or purchase backlog, while the last one is always requested for procurement (even though you have 100 in stock). Note that you can still manually override this behaviour and assign everything to stock or purchase backlog.
Minimum value: 1
This field is optional.
>{Integer}</AssignInMultipleOf>MinimumGrossMargin
The minimum gross margin, in percent, for the product
Minimum value: 0
This field is optional.
>{Decimal}</MinimumGrossMargin>WarrantyPeriod
The time period (in months) in which the product may be returned or exchanged. The warranty period starts at the date of shipment to customer.
Minimum value: 0
This field is optional.
>{Integer}</WarrantyPeriod>StandardLeadTime
The standard lead time, in number of days, from customer places order to delivery.
Minimum value: 0
This field is optional.
>{Integer}</StandardLeadTime>MinimumSalesPrice
This field is optional.
>Currency
Three character code following the ISO 4217 standard
Applicable domain values can be found here
This field is optional.
>{String}</Currency>NetPrice
Minimum sales price for product
Minimum value: 0
This field is optional.
>{Decimal}</NetPrice>ExclusivelyForCustomer
If customer is specified, only this customer can place orders for this product.
This field is optional.
>CustomerId
Customer identifier
Minimum value: 10000
This field is optional.
>{Integer}</CustomerId>Stock
This field is optional.
>IsNonStock
True if this is a non-physical product which are no using assignments from the assignment archive
This field is optional.
>{Boolean}</IsNonStock>RequireSerialNumberAtGoodsReception
If all units of this product should have a serial number in stock, you should require serial number to be required at goods reception. This will ensure that serial number is specified before goods receptions with this product is registered.
This field is optional.
>{Boolean}</RequireSerialNumberAtGoodsReception>Procurement
This field is optional.
>ExpectedLeadTime
The expected lead time, in number of days, from ordering from supplier to delivery. Used in different purchase processes, typically when supplier is unknown. Note that this might differ from the standard lead times defined on the different suppliers.
Minimum value: 0
This field is optional.
>{Integer}</ExpectedLeadTime>AutoGenerateSerialNumbersForPurchaseOrders
Serial numbers can be added to all newly created purchase order items. The serial number is specified in the company setting ProductionSerialNumberCounter, which will increase afterwards. If the company setting AutoProductionSerialNumberPrefix is specified, the serial number will be prefixed by this value.
This field is optional.
>{Boolean}</AutoGenerateSerialNumbersForPurchaseOrders>ProductCollection
This field is optional.
>ProductId
Product identifier
Minimum value: 10000
This field is optional.
>{Integer}</ProductId>Product
This field is optional.
": {Name
Name of the product
This field is optional.
": "{String}",Type
Type of product
Applicable domain values can be found here
This field is optional.
": "{String}",Description
Description of the product
This field is optional.
": "{String}",ExternalReference
External reference of the product. Typically used for storing product identifier for same product in external system.
This field is optional.
": "{String}",CustomField1
Custom field for grouping, sorting, categorizing and other purposes.
This field is optional.
": "{String}",CustomField2
Custom field for grouping, sorting, categorizing and other purposes.
This field is optional.
": "{String}",CustomField3
Custom field for grouping, sorting, categorizing and other purposes
This field is optional.
": "{String}",GlobalTradeItemNumber
Global Trade Item Number (GTIN) is a 14 digit identifier for trade items (comprising among others of the former EAN International and Uniform Code Council). Examples of types of GTIN are UPC, EAN, JAN, ISBN
Maximum value: 14
Input must match the following regular expression pattern: ([0-9])+
This field is optional.
": "{String}",Weight
The weight of the product in kilograms.
Minimum value: 0
This field is optional.
": "{Decimal}",CountryOfOriginCode
Two-character code (ISO 3166) identifying the default country where the product is produced. This value is inherrited from the assigned goods reception(s). If not country of origin is specified for the goods reception(s), country of origin is retrieved from the product. If assigned to multiple goods receptions with different origin, the field will be empty.
This field is optional.
": "{String}",InternalNote
Internal note regardig the product. Should not be exposed to customers.
This field is optional.
": "{String}",MoistureSensitivityLevel
Moisture sensitivity level is an electronic standard for the time period in which a moisture sensitive device can be exposed to ambient room conditions.
Applicable domain values can be found here
This field is optional.
": "{String}",PublicProductUri
Public/external product URI for more information about the product. Will typically be an URL to product details at the manufacturer web site.
Input must match the following regular expression pattern: ^(http|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?$
This field is optional.
": "{String}",RequireSerialNumberBeforeShipping
If all units of this product should have a serial number before shipping, you should require serial number to be specified before shipping this product. Shipping includes supplier returns, shipping advices and stock transfers.
This field is optional.
": "{Boolean}",MeasurementUnit
Measurement unit used for this product, both in sales and purchase.
This field is optional.
": {MeasurementUnitId
Measurement unit identifier
Minimum value: 100
This field is optional.
": "{Integer}"Manufacturer
Manufacturer of the product
This field is optional.
": {ManufacturerId
Manufacturer identifier
Minimum value: 1000
This field is optional.
": "{Integer}"DefaultManufacturersProduct
This field is optional.
": {ManufacturersProductId
Manufacturer product identifier
Minimum value: 100000
This field is optional.
": "{Integer}"Package
This field is optional.
": {PalletQuantity
Total quantity of the product that can be on a pallet
Minimum value: 0
This field is optional.
": "{Integer}",PackageQuantity
Total quantity of the product within a package
Minimum value: 0
This field is optional.
": "{Integer}",PackageType
Type of wrapping used for the package
Applicable domain values can be found here
This field is optional.
": "{String}"Dimensions
This field is optional.
": {Width
Width of the product in centimetres
Minimum value: 0
This field is optional.
": "{Decimal}",Height
Height of the product in centimetres
Minimum value: 0
This field is optional.
": "{Decimal}",Length
Length of the product in centimetres
Minimum value: 0
This field is optional.
": "{Decimal}",Volume
Volume of the product in cubic centimetres. Volume is calculated automatically as L* W* H (when the volume field is empty and L,W ,H have values). Volume can also be changed manually
Minimum value: 0
This field is optional.
": "{Decimal}"MainImage
Main image of the product
This field is optional.
": {File
This field is optional.
": {FileId
File identifier
Minimum value: 100000
This field is optional.
": "{Integer}"ProductClassification
This field is optional.
": {ProductClassificationId
Product classification identifier
This field is optional.
": "{String}"Production
This field is optional.
": {IsTraceableMaterialOfProductUnit
During production of a product structure, each produced unit generates a list of tracable materials included in the finished unit. When this value is true, this product is included in the list of tracable materials.
This field is optional.
": "{Boolean}",IsManufacturedInBatches
Products is either manufactured in batch product units, or single product units. When manufactured as single, each production unit of a production work order should result in seperate product units. When manufactured in batches, all production units from one production work order should result in one common product unit.
This field is optional.
": "{Boolean}",NeedsMaterialReplacementToRelease
You can add a dummy article in productions which you replace with the actual product before production starts. This function is used in situations where it is undecided which product will be used in the final production.
This field is optional.
": "{Boolean}",PlanningCategory
Planning category
Applicable domain values can be found here
This field is optional.
": "{String}",ManufacturingArea
This field is optional.
": {ManufacturingAreaId
Manufacturing area identifier
Minimum value: 100000
This field is optional.
": "{Integer}"Service
This field is optional.
": {ServiceInterval
Service template of the product. This template will be used when performing service for this product.
This field is optional.
": {ServiceIntervalId
Service interval identifier
Minimum value: 100000
This field is optional.
": "{Integer}"Sales
This field is optional.
": {Type
Defines if an article is of one of the types: Sales, Sales and rental, Rental, Subscription
Applicable domain values can be found here
This field is optional.
": "{Integer}",AssignInMultipleOf
Sometimes the products are packed together in a way that makes it preferrable to keep them together when selling. When RamBase starts the process of assigning sales to stock or purchase backlog, this field is taken into consideration. If the available quantity is not in this multiple, the rest quantity will be requested for procurement.
Ex. a product is set up to be assigned in multiple of 3. When selling 7 pcs of this product, 6 is assigned to stock or purchase backlog, while the last one is always requested for procurement (even though you have 100 in stock). Note that you can still manually override this behaviour and assign everything to stock or purchase backlog.
Minimum value: 1
This field is optional.
": "{Integer}",MinimumGrossMargin
The minimum gross margin, in percent, for the product
Minimum value: 0
This field is optional.
": "{Decimal}",WarrantyPeriod
The time period (in months) in which the product may be returned or exchanged. The warranty period starts at the date of shipment to customer.
Minimum value: 0
This field is optional.
": "{Integer}",StandardLeadTime
The standard lead time, in number of days, from customer places order to delivery.
Minimum value: 0
This field is optional.
": "{Integer}",MinimumSalesPrice
This field is optional.
": {Currency
Three character code following the ISO 4217 standard
Applicable domain values can be found here
This field is optional.
": "{String}",NetPrice
Minimum sales price for product
Minimum value: 0
This field is optional.
": "{Decimal}"ExclusivelyForCustomer
If customer is specified, only this customer can place orders for this product.
This field is optional.
": {CustomerId
Customer identifier
Minimum value: 10000
This field is optional.
": "{Integer}"Stock
This field is optional.
": {IsNonStock
True if this is a non-physical product which are no using assignments from the assignment archive
This field is optional.
": "{Boolean}",RequireSerialNumberAtGoodsReception
If all units of this product should have a serial number in stock, you should require serial number to be required at goods reception. This will ensure that serial number is specified before goods receptions with this product is registered.
This field is optional.
": "{Boolean}"Procurement
This field is optional.
": {ExpectedLeadTime
The expected lead time, in number of days, from ordering from supplier to delivery. Used in different purchase processes, typically when supplier is unknown. Note that this might differ from the standard lead times defined on the different suppliers.
Minimum value: 0
This field is optional.
": "{Integer}",AutoGenerateSerialNumbersForPurchaseOrders
Serial numbers can be added to all newly created purchase order items. The serial number is specified in the company setting ProductionSerialNumberCounter, which will increase afterwards. If the company setting AutoProductionSerialNumberPrefix is specified, the serial number will be prefixed by this value.
This field is optional.
": "{Boolean}"ProductCollection
This field is optional.
": {ProductId
Product identifier
Minimum value: 10000
This field is optional.
": "{Integer}"The query string is placed after the resource URL, seperated with a questionmark (?). The query string is composed of a series of query parameters with values. See the page about query parameters on how to use these parameters.
$access_token String, optional | After successful login you get an access token which needs to be provided in all API requests. Even though it is possible to pass this token as query parameter, we recommended passing it using the HTTP request header as described in Authorization. Note that all access tokens have an expiration time. |
$db String, optional | Set the database/company for the request |
$useMinimumVersion Integer, optional | Used to run a new version of an API resource when your API client is running a deprecated API resource. See the Breaking changes page for more information. |
$showCustomFields Boolean, optional | Set to "true" to include custom fields. Default value is false. |
Read more about filters and sorting on how to use filter parameters and named filters.
Read more about filters and sorting on how to use sortable parameters
Requesting this resource will yield the following response. Mouse over fieldnames (or fieldgroups) for descriptions and other useful information about the fields. Fields colored in grey is expandable fields.
Please note that some fields may be removed from the response, based on user roles/duties/permissions.
List of available operations/actions for this resource.
See the operations documentation for more information about API operations.
Possible error codes the response might return:
Error 102014 HTTP 400 | VAT code is required |
Error 102012 HTTP 400 | Transcation Object ID is required |
Error 104869 HTTP 404 | Default account not found |
Error 101488 HTTP 400 | Illegal general ledger account : {0} |
Error 105186 HTTP 400 | Postings are not allowed on control accounts. |
Error 101490 HTTP 400 | Illegal Account {0}: This account has been blocked for {1}-documents |
Error 101491 HTTP 400 | Illegal Account {0}: Check the account's FromPeriod and ToPeriod |
Error 101517 HTTP 400 | Illegal Account {0}: This account require ICTDB. |
Error 102482 HTTP 400 | Department is required for general ledger account {0} |
Error 102483 HTTP 400 | Finance project is required for general ledger account {0} |
Error 102484 HTTP 400 | Asset is required for general ledger account {0} |
Error 102485 HTTP 400 | Dimension {0} ({1}) is required for general ledger account {2} |
Error 101313 HTTP 400 | Department number is not valid: {0} |
Error 101320 HTTP 400 | The project number is not valid: {0} |
Error 101500 HTTP 400 | Project {0} could not be used : Check project FromPeriod and ToPeriod. |
Error 101501 HTTP 400 | Asset is not allowed on general ledger account {0} |
Error 101326 HTTP 400 | The asset number is not valid : {0} |
Error 102486 HTTP 400 | Invalid value for dimension {0} |
Error 101124 HTTP 400 | Hardware code already exists |
Error 106437 HTTP 400 | Type can not be changed when status is not equal to draft (status 1) |
Error 101009 HTTP 400 | The product has a structure. You can only change the product type to a type that can contain a structure. |
Error 101010 HTTP 400 | The product structure contains operations and can not be changed to become a phantom structure |
Error 101008 HTTP 400 | Cannot change product type from a physical type to a virtual type |
Error 101007 HTTP 400 | Cannot change product type from a virtual type to a physical type |
Error 103021 HTTP 400 | Linkid must be a rental product |
Error 104760 HTTP 400 | Costing method can't be changed after product has been received |
Error 104652 HTTP 400 | Both minimum sales price and minimum sales price currency must be given |
Error 100563 HTTP 400 | Currency {0} is not supported by the system |
Error 104653 HTTP 400 | Minimum sales price can not be negative |
Error 106506 HTTP 404 | Image not found |