# Create a new rental product Endpoint: POST /rental-products Version: 2.13 Security: bearerAuth ## Request fields (application/json): - `rentalProductCategoryId` (integer, required) Rental product category identifier Example: 1 - `productType` (string, required) Rental product type Enum: "PRODUCT", "FEATURE", "EVENT" - `name` (string, required) Product name - `invoicePresentationName` (string, required) Invoice Presentation name - `parentRentalProductId` (integer) Parent rental product identifier Example: 1 - `supplierId` (integer, required) Supplier identifier - `supplierProductNames` (array) Mapping name(s) used by the supplier in their invoice file - `taxBandId` (integer, required) Supplier account identifier Example: 1 - `availableFrom` (string, required) Product is available from this date - `nominalCode` (string) Nominal code Example: "SALES-01QTR2" - `availableTo` (string) Product is available to this date - `doNotProRate` (boolean) Do not pro rate - `alignedToStart` (boolean) Default value for alignedToStart when creating rental product inventories - `alignedToBillPeriod` (boolean) Default value for alignedToBillPeriod when creating rental product inventories - `billInitialChargesImmediately` (boolean) Default value for billInitialChargesImmediately when creating rental product inventories - `forceBillPeriods` (integer) Default value for forceBillPeriods when creating rental product inventories. When this is 0, forceBilling on the rental product inventories will be set to false Example: 1 - `additionalProductReferenceRequired` (boolean) Additional product reference is required on rental product inventories - `additionalProductReferenceFormat` (string) Regular expression (regex) used to validate the additional product reference on rental product inventories Example: "[a-zA-Z0-9]{4,15}" - `linkedUsageProductId` (integer) Linked usage product identifier Example: 1 - `productReferenceRequired` (boolean) Product reference is required on rental product - `productReferenceFormat` (string) Regular expression (regex) used to validate the product reference on rental product inventories Example: ".*" - `productReferenceMayBeDDIRange` (boolean) Product reference may be a DDI range on rental product - `generateWhenParentCreated` (boolean) Generate a FEATURE or EVENT RPI for this product when the parentRentalProduct is assigned to a new RPI. Will skip generation for products whose availableTo is in the past - `customFields` (array) - `customFields.label` (string, required) Custom field label - `customFields.value` (string, required) Custom field value ## Response 200 fields (application/json): - `id` (integer) Rental product identifier Example: 1 - `rentalProductCategoryId` (integer, required) Rental product category identifier Example: 1 - `productType` (string, required) Rental product type Enum: "PRODUCT", "FEATURE", "EVENT" - `name` (string, required) Product name - `invoicePresentationName` (string, required) Invoice Presentation name - `parentRentalProductId` (integer) Parent rental product identifier Example: 1 - `supplierId` (integer, required) Supplier identifier - `supplierProductNames` (array) Mapping name(s) used by the supplier in their invoice file - `taxBandId` (integer, required) Supplier account identifier Example: 1 - `availableFrom` (string, required) Product is available from this date - `nominalCode` (string) Nominal code Example: "SALES-01QTR2" - `availableTo` (string) Product is available to this date - `doNotProRate` (boolean) Do not pro rate - `alignedToStart` (boolean) Default value for alignedToStart when creating rental product inventories - `alignedToBillPeriod` (boolean) Default value for alignedToBillPeriod when creating rental product inventories - `billInitialChargesImmediately` (boolean) Default value for billInitialChargesImmediately when creating rental product inventories - `forceBillPeriods` (integer) Default value for forceBillPeriods when creating rental product inventories. When this is 0, forceBilling on the rental product inventories will be set to false Example: 1 - `additionalProductReferenceRequired` (boolean) Additional product reference is required on rental product inventories - `additionalProductReferenceFormat` (string) Regular expression (regex) used to validate the additional product reference on rental product inventories Example: "[a-zA-Z0-9]{4,15}" - `linkedUsageProductId` (integer) Linked usage product identifier Example: 1 - `productReferenceRequired` (boolean) Product reference is required on rental product - `productReferenceFormat` (string) Regular expression (regex) used to validate the product reference on rental product inventories Example: ".*" - `productReferenceMayBeDDIRange` (boolean) Product reference may be a DDI range on rental product - `generateWhenParentCreated` (boolean) Generate a FEATURE or EVENT RPI for this product when the parentRentalProduct is assigned to a new RPI. Will skip generation for products whose availableTo is in the past - `customFields` (array) - `customFields.id` (integer) Custom field identifier Example: 1 - `customFields.label` (string, required) Custom field label - `customFields.value` (string, required) Custom field value ## Response 201 fields (application/json): - `id` (integer) Rental product identifier Example: 1 - `rentalProductCategoryId` (integer, required) Rental product category identifier Example: 1 - `productType` (string, required) Rental product type Enum: "PRODUCT", "FEATURE", "EVENT" - `name` (string, required) Product name - `invoicePresentationName` (string, required) Invoice Presentation name - `parentRentalProductId` (integer) Parent rental product identifier Example: 1 - `supplierId` (integer, required) Supplier identifier - `supplierProductNames` (array) Mapping name(s) used by the supplier in their invoice file - `taxBandId` (integer, required) Supplier account identifier Example: 1 - `availableFrom` (string, required) Product is available from this date - `nominalCode` (string) Nominal code Example: "SALES-01QTR2" - `availableTo` (string) Product is available to this date - `doNotProRate` (boolean) Do not pro rate - `alignedToStart` (boolean) Default value for alignedToStart when creating rental product inventories - `alignedToBillPeriod` (boolean) Default value for alignedToBillPeriod when creating rental product inventories - `billInitialChargesImmediately` (boolean) Default value for billInitialChargesImmediately when creating rental product inventories - `forceBillPeriods` (integer) Default value for forceBillPeriods when creating rental product inventories. When this is 0, forceBilling on the rental product inventories will be set to false Example: 1 - `additionalProductReferenceRequired` (boolean) Additional product reference is required on rental product inventories - `additionalProductReferenceFormat` (string) Regular expression (regex) used to validate the additional product reference on rental product inventories Example: "[a-zA-Z0-9]{4,15}" - `linkedUsageProductId` (integer) Linked usage product identifier Example: 1 - `productReferenceRequired` (boolean) Product reference is required on rental product - `productReferenceFormat` (string) Regular expression (regex) used to validate the product reference on rental product inventories Example: ".*" - `productReferenceMayBeDDIRange` (boolean) Product reference may be a DDI range on rental product - `generateWhenParentCreated` (boolean) Generate a FEATURE or EVENT RPI for this product when the parentRentalProduct is assigned to a new RPI. Will skip generation for products whose availableTo is in the past - `customFields` (array) - `customFields.id` (integer) Custom field identifier Example: 1 - `customFields.label` (string, required) Custom field label - `customFields.value` (string, required) Custom field value ## Response 400 fields ## Response 401 fields ## Response 403 fields