API

Rental APIs

PUT rental/contracts/{rentalContractId}

Update rental contract

HTTP method PUT
URI https://api.rambase.net/rental/contracts/{rentalContractId}
Supported formats Xml, Html, Json (ex. $format=json)
- URI parameter {rentalContractId} Rental contract identifier
Integer, minimum 100000
Custom fields Custom fields supported
Successful HTTP status code 200
API resource identifier 5760, version 16

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.

Format:
1
<RentalContract
RentalContract

This field is optional.

>
2
     <Name
Name

Short description for the rental contract

This field is optional.

>
{String}</Name>
3
     <Description
Description

Detailed description for the recurring rental contract

This field is optional.

>
{String}</Description>
4
     <Currency
Currency

Three character code following the ISO 4217 standard

Applicable domain values can be found here

This field is optional.

>
{String}</Currency>
5
     <CustomersReference
CustomersReference

Customers reference. Typically a person.

This field is optional.

>
{String}</CustomersReference>
6
     <CustomersReferenceNumber
CustomersReferenceNumber

Customers reference number. E.g. the internal sales order id the customer use in their own system.

This field is optional.

>
{String}</CustomersReferenceNumber>
7
     <DiscountPercentage
DiscountPercentage

This field originates from the Rental discount field on the customer. If changing this field it will not alter discount on existing items.

Minimum value: 0

Maximum value: 100

This field is optional.

>
{Decimal}</DiscountPercentage>
8
     <RentalType
RentalType

Type of contract: Subscription, Rent-to-Rent, Rent-to-Purchase, Customer owned, Re-rent

Applicable domain values can be found here

This field is optional.

>
{Integer}</RentalType>
9
     <InvoiceFrequency
InvoiceFrequency

Sets frequency at which invoice can be issued.

Applicable domain values can be found here

This field is optional.

>
{Integer}</InvoiceFrequency>
10
     <CreateAccountAdjustmentPlan
CreateAccountAdjustmentPlan

The control bit of a mechanism of automatic creation of periods adustments

This field is optional.

>
{Boolean}</CreateAccountAdjustmentPlan>
11
     <DeactivateExpirationDateExtending
DeactivateExpirationDateExtending

Allows to deactivate the automatic extension of expiration dates setting for the contract

This field is optional.

>
{Boolean}</DeactivateExpirationDateExtending>
12
     <BaseDate
BaseDate

A date from which invoices will start to be generated from

This field is optional.

>
{Date}</BaseDate>
13
     <IsAutomaticallyIssued
IsAutomaticallyIssued

"True" if invoices in this rental contract should be released automatically

This field is optional.

>
{Boolean}</IsAutomaticallyIssued>
14
     <ShippingAddressAttention
ShippingAddressAttention

Attention of the shipping address. When changing shipping address, the ShippingAddressAttention will be overridden by the attention of the new shipping address.

This field is optional.

>
{String}</ShippingAddressAttention>
15
     <ShippingAddressPhone
ShippingAddressPhone

Phone number of the shipping address. When changing shipping address, the ShippingAddressPhone will be overridden by the phone number of the new shipping address.

Input must match the following regular expression pattern: ^([0-9\(\)\s\.\+\-])*$

This field is optional.

>
{String}</ShippingAddressPhone>
16
     <ShippingAddressEmail
ShippingAddressEmail

Email address of the shipping address. When changing shipping address, the ShippingAddressEmail will be overridden by the email of the new shipping address.

Input must match the following regular expression pattern: ^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$

This field is optional.

>
{String}</ShippingAddressEmail>
17
     <InvoiceAddressAttention
InvoiceAddressAttention

Attention of the invoice address. When changing invoice address, the InvoiceAddressAttention will be overridden by the attention of the new invoice address.

This field is optional.

>
{String}</InvoiceAddressAttention>
18
     <DefaultCheckOutLocation
DefaultCheckOutLocation

A default check-out location for rental items

This field is optional.

>
19
          <LocationId
LocationId

Location identifier

Minimum value: 10000

This field is optional.

>
{Integer}</LocationId>
20
     </DefaultCheckOutLocation>
21
     <DefaultCheckInLocation
DefaultCheckInLocation

A default check-in location for rental items

This field is optional.

>
22
          <LocationId
LocationId

Location identifier

Minimum value: 10000

This field is optional.

>
{Integer}</LocationId>
23
     </DefaultCheckInLocation>
24
     <AdvanceInvoicing
AdvanceInvoicing

This field is optional.

>
25
          <IsInvoicedInAdvance
IsInvoicedInAdvance

True if rental contract is invoiced in advance

This field is optional.

>
{Boolean}</IsInvoicedInAdvance>
26
          <BaseDateAdvanceDays
BaseDateAdvanceDays

Number of days to advance invoicing from base date

Minimum value: 0

This field is optional.

>
{Integer}</BaseDateAdvanceDays>
27
     </AdvanceInvoicing>
28
     <Period
Period

This field is optional.

>
29
          <EffectiveDate
EffectiveDate

Start date for the recurring contract

This field is optional.

>
{Date}</EffectiveDate>
30
          <ExpirationDate
ExpirationDate

End date of the recurring contract

This field is optional.

>
{Date}</ExpirationDate>
31
          <TerminationDate
TerminationDate

The date of termination of the contract

This field is optional.

>
{Date}</TerminationDate>
32
          <ClosingDate
ClosingDate

The date after the final invoicing, and all logistics handled. The contract is sealed and cannot be changed

This field is optional.

>
{Date}</ClosingDate>
33
     </Period>
34
     <Responsible
Responsible

PID reference of sales assistant for the contract

This field is optional.

>
35
          <UserId
UserId

User identifier

Minimum value: 100

This field is optional.

>
{Integer}</UserId>
36
     </Responsible>
37
     <Assignee
Assignee

PID reference of sales assistant for the contract

This field is optional.

>
38
          <UserId
UserId

User identifier

Minimum value: 100

This field is optional.

>
{Integer}</UserId>
39
     </Assignee>
40
     <AccountManager
AccountManager

PID reference of sales assistant for the contract

This field is optional.

>
41
          <UserId
UserId

User identifier

Minimum value: 100

This field is optional.

>
{Integer}</UserId>
42
     </AccountManager>
43
     <InvoiceAddress
InvoiceAddress

This field is optional.

>
44
          <AddressId
AddressId

Reference to customer's invoice address

Minimum value: 1

This field is optional.

>
{Integer}</AddressId>
45
     </InvoiceAddress>
46
     <ShippingAddress
ShippingAddress

This field is optional.

>
47
          <AddressId
AddressId

Reference to customer's shipping address

Minimum value: 1

This field is optional.

>
{Integer}</AddressId>
48
     </ShippingAddress>
49
     <Payment
Payment

This field is optional.

>
50
          <PaymentTerms
PaymentTerms

Payment terms for rental contract

Applicable domain values can be found here

This field is optional.

>
{String}</PaymentTerms>
51
     </Payment>
52
     <VATDetails
VATDetails

This field is optional.

>
53
          <VATHandling
VATHandling

Specifies how value added tax (VAT) should be calculated. Either always include VAT, always exclude VAT or use standard/default VAT rules.

Applicable domain values can be found here

This field is optional.

>
{String}</VATHandling>
54
     </VATDetails>
55
     <Location
Location

This field is optional.

>
56
          <LocationId
LocationId

Location identifier

Minimum value: 10000

This field is optional.

>
{Integer}</LocationId>
57
     </Location>
58
     <Shipment
Shipment

This field is optional.

>
59
          <DeliveryTerms
DeliveryTerms

Delivery terms when shipping the goods. The delivery terms is based on the Incoterms rules from ICC (International Chamber of Commerce). The delivery terms is by default retrieved from the customer.

Applicable domain values can be found here

This field is optional.

>
{String}</DeliveryTerms>
60
          <DeliveryTermPlace
DeliveryTermPlace

Named place related to delivery terms (Incoterms)

This field is optional.

>
{String}</DeliveryTermPlace>
61
          <ShippingService
ShippingService

This field is optional.

>
62
               <ShippingServiceId
ShippingServiceId

Shipping service identifier

Minimum value: 100000

This field is optional.

>
{Integer}</ShippingServiceId>
63
          </ShippingService>
64
     </Shipment>
65
</RentalContract>
1
{
2
     "rentalContract
RentalContract

This field is optional.

":
{
3
          "name
Name

Short description for the rental contract

This field is optional.

":
"{String}",
4
          "description
Description

Detailed description for the recurring rental contract

This field is optional.

":
"{String}",
5
          "currency
Currency

Three character code following the ISO 4217 standard

Applicable domain values can be found here

This field is optional.

":
"{String}",
6
          "customersReference
CustomersReference

Customers reference. Typically a person.

This field is optional.

":
"{String}",
7
          "customersReferenceNumber
CustomersReferenceNumber

Customers reference number. E.g. the internal sales order id the customer use in their own system.

This field is optional.

":
"{String}",
8
          "discountPercentage
DiscountPercentage

This field originates from the Rental discount field on the customer. If changing this field it will not alter discount on existing items.

Minimum value: 0

Maximum value: 100

This field is optional.

":
"{Decimal}",
9
          "rentalType
RentalType

Type of contract: Subscription, Rent-to-Rent, Rent-to-Purchase, Customer owned, Re-rent

Applicable domain values can be found here

This field is optional.

":
"{Integer}",
10
          "invoiceFrequency
InvoiceFrequency

Sets frequency at which invoice can be issued.

Applicable domain values can be found here

This field is optional.

":
"{Integer}",
11
          "createAccountAdjustmentPlan
CreateAccountAdjustmentPlan

The control bit of a mechanism of automatic creation of periods adustments

This field is optional.

":
"{Boolean}",
12
          "deactivateExpirationDateExtending
DeactivateExpirationDateExtending

Allows to deactivate the automatic extension of expiration dates setting for the contract

This field is optional.

":
"{Boolean}",
13
          "baseDate
BaseDate

A date from which invoices will start to be generated from

This field is optional.

":
"{Date}",
14
          "isAutomaticallyIssued
IsAutomaticallyIssued

"True" if invoices in this rental contract should be released automatically

This field is optional.

":
"{Boolean}",
15
          "shippingAddressAttention
ShippingAddressAttention

Attention of the shipping address. When changing shipping address, the ShippingAddressAttention will be overridden by the attention of the new shipping address.

This field is optional.

":
"{String}",
16
          "shippingAddressPhone
ShippingAddressPhone

Phone number of the shipping address. When changing shipping address, the ShippingAddressPhone will be overridden by the phone number of the new shipping address.

Input must match the following regular expression pattern: ^([0-9\(\)\s\.\+\-])*$

This field is optional.

":
"{String}",
17
          "shippingAddressEmail
ShippingAddressEmail

Email address of the shipping address. When changing shipping address, the ShippingAddressEmail will be overridden by the email of the new shipping address.

Input must match the following regular expression pattern: ^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$

This field is optional.

":
"{String}",
18
          "invoiceAddressAttention
InvoiceAddressAttention

Attention of the invoice address. When changing invoice address, the InvoiceAddressAttention will be overridden by the attention of the new invoice address.

This field is optional.

":
"{String}",
19
          "defaultCheckOutLocation
DefaultCheckOutLocation

A default check-out location for rental items

This field is optional.

":
{
20
               "locationId
LocationId

Location identifier

Minimum value: 10000

This field is optional.

":
"{Integer}"
21
          },
22
          "defaultCheckInLocation
DefaultCheckInLocation

A default check-in location for rental items

This field is optional.

":
{
23
               "locationId
LocationId

Location identifier

Minimum value: 10000

This field is optional.

":
"{Integer}"
24
          },
25
          "advanceInvoicing
AdvanceInvoicing

This field is optional.

":
{
26
               "isInvoicedInAdvance
IsInvoicedInAdvance

True if rental contract is invoiced in advance

This field is optional.

":
"{Boolean}",
27
               "baseDateAdvanceDays
BaseDateAdvanceDays

Number of days to advance invoicing from base date

Minimum value: 0

This field is optional.

":
"{Integer}"
28
          },
29
          "period
Period

This field is optional.

":
{
30
               "effectiveDate
EffectiveDate

Start date for the recurring contract

This field is optional.

":
"{Date}",
31
               "expirationDate
ExpirationDate

End date of the recurring contract

This field is optional.

":
"{Date}",
32
               "terminationDate
TerminationDate

The date of termination of the contract

This field is optional.

":
"{Date}",
33
               "closingDate
ClosingDate

The date after the final invoicing, and all logistics handled. The contract is sealed and cannot be changed

This field is optional.

":
"{Date}"
34
          },
35
          "responsible
Responsible

PID reference of sales assistant for the contract

This field is optional.

":
{
36
               "userId
UserId

User identifier

Minimum value: 100

This field is optional.

":
"{Integer}"
37
          },
38
          "assignee
Assignee

PID reference of sales assistant for the contract

This field is optional.

":
{
39
               "userId
UserId

User identifier

Minimum value: 100

This field is optional.

":
"{Integer}"
40
          },
41
          "accountManager
AccountManager

PID reference of sales assistant for the contract

This field is optional.

":
{
42
               "userId
UserId

User identifier

Minimum value: 100

This field is optional.

":
"{Integer}"
43
          },
44
          "invoiceAddress
InvoiceAddress

This field is optional.

":
{
45
               "addressId
AddressId

Reference to customer's invoice address

Minimum value: 1

This field is optional.

":
"{Integer}"
46
          },
47
          "shippingAddress
ShippingAddress

This field is optional.

":
{
48
               "addressId
AddressId

Reference to customer's shipping address

Minimum value: 1

This field is optional.

":
"{Integer}"
49
          },
50
          "payment
Payment

This field is optional.

":
{
51
               "paymentTerms
PaymentTerms

Payment terms for rental contract

Applicable domain values can be found here

This field is optional.

":
"{String}"
52
          },
53
          "vATDetails
VATDetails

This field is optional.

":
{
54
               "vATHandling
VATHandling

Specifies how value added tax (VAT) should be calculated. Either always include VAT, always exclude VAT or use standard/default VAT rules.

Applicable domain values can be found here

This field is optional.

":
"{String}"
55
          },
56
          "location
Location

This field is optional.

":
{
57
               "locationId
LocationId

Location identifier

Minimum value: 10000

This field is optional.

":
"{Integer}"
58
          },
59
          "shipment
Shipment

This field is optional.

":
{
60
               "deliveryTerms
DeliveryTerms

Delivery terms when shipping the goods. The delivery terms is based on the Incoterms rules from ICC (International Chamber of Commerce). The delivery terms is by default retrieved from the customer.

Applicable domain values can be found here

This field is optional.

":
"{String}",
61
               "deliveryTermPlace
DeliveryTermPlace

Named place related to delivery terms (Incoterms)

This field is optional.

":
"{String}",
62
               "shippingService
ShippingService

This field is optional.

":
{
63
                    "shippingServiceId
ShippingServiceId

Shipping service identifier

Minimum value: 100000

This field is optional.

":
"{Integer}"
64
               }
65
          }
66
     }
67
}

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.

Format:
1
1

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 100140 HTTP 404 Company not found
Error 105224 HTTP 400 Runtime on product structure operation must be greater than 0
Error 105251 HTTP 400 Setup time on product structure operation must be greater than 0
Error 105250 HTTP 400 Cleanup time on product structure operation must be greater than 0
Error 105679 HTTP 400 Production resource does not allow to add manhours
Error 108137 HTTP 400 Standard ManhourRate is not set for Resource
Error 107763 HTTP 400 Only product structures can be set up for line production
Error 107764 HTTP 400 Only product structures can be externally manufactured
Error 109643 HTTP 400 Safetystock cannot be greater than maximumstock
Error 103478 HTTP 400 Purchase price is required
Error 102109 HTTP 400 Supplier is required
Error 100047 HTTP 404 Supplier not found
Error 101097 HTTP 404 Given currency {0} mismatch with currencies of supplier {1}
Error 103551 HTTP 400 IsManufacturedInBatches can only be changed on product structures
Error 103554 HTTP 400 AutomaticallyCreateWorkOrdersForSubstructures can only be changed on product structures
Error 104253 HTTP 400 ProduceInMultipleOf can only be changed on product structures.
Error 107694 HTTP 400 Use line production can only be changed on product structeres
Error 106999 HTTP 400 Sub module 'Projectorder' is not activated in this company
Error 106436 HTTP 400 Unit can only be changed when status is equal to draft (status 1)
Error 100167 HTTP 404 Measurement unit not found
Error 104486 HTTP 400 Unit production is only allowed for measurment units (UNI) of type QTY
Error 100200 HTTP 404 Special handling code not found
Error 100092 HTTP 404 Service template not found
Error 103020 HTTP 404 Qcdoc not found
Error 101091 HTTP 404 Contry of origin is not valid: {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 106680 HTTP 400 Not allowed when product is of subscription sales type
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 108988 HTTP 400 Sales type can not be changed when status is equal to completed(status 9)
Error 109184 HTTP 400 Sales type can not be changed to Subscription from other types.
Error 109185 HTTP 400 Sales type can not be changed to other types from Subscription.
Error 109180 HTTP 400 Sales type can not be changed from Rental/Sale to Sales
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