API

RamBase REST APIs

POST sales/orders/{salesOrderId}/api-operations/100437/instances

Copies sales order to new sales quote.

This is an API operation. Read the documentation pages for more information about API operations.

HTTP method POST
URI https://api.rambase.net/sales/orders/{salesOrderId}/api-operations/100437/instances
Supported formats Xml, Html, Json (ex. $format=json)
- URI parameter {salesOrderId} Sales order identifier
Integer, minimum 100000
Successful HTTP status code 200
API resource identifier 2888, version 4

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
<Parameters>
2
     <CustomerId
CustomerId

Required/mandatory field

Customer identifier

Minimum value: 10000

>
{Integer}</CustomerId>
3
     <AddressId
AddressId

Address identifier

Minimum value: 1

This field is optional.

>
{Integer}</AddressId>
4
     <Currency
Currency

Three character code following the ISO 4217 standard

Applicable domain values can be found here

Input must match the following regular expression pattern: ^[A-Z]{3}$

This field is optional.

>
{String}</Currency>
5
</Parameters>
1
{
2
     "parameters": {
3
          "customerId
CustomerId

Required/mandatory field

Customer identifier

Minimum value: 10000

":
"{Integer}",
4
          "addressId
AddressId

Address identifier

Minimum value: 1

This field is optional.

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

Three character code following the ISO 4217 standard

Applicable domain values can be found here

Input must match the following regular expression pattern: ^[A-Z]{3}$

This field is optional.

":
"{String}"
6
     }
7
}

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.
$lang String, optional Specifies the language used in the response, following the 3-letter ISO-639-1 [lll]

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.

Please note that some fields may be removed from the response, based on user roles/duties/permissions.

Format:
1
<OperationInstance>
2
     <OperationInstanceId
OperationInstanceId

Operation instance identifier

>
{Integer}</OperationInstanceId>
3
     <Status
Status

Status of the instance, 2 = started, 7 = error, 9 = finished

>
{Integer}</Status>
4
     <CreatedAt
CreatedAt

Date and time the operation instance was created

>
{Datetime}</CreatedAt>
5
     <CreatedBy
CreatedBy

Reference to the creator

>
6
          <UserId
UserId

User identifier

>
{Integer}</UserId>
7
          <UserLink
UserLink

User reference

>
{String}</UserLink>
8
     </CreatedBy>
9
     <CreatedFor>
10
          <ObjectId
ObjectId

Identifier of the object

>
{String}</ObjectId>
11
          <ObjectType
ObjectType

Type of object

>
{String}</ObjectType>
12
          <ObjectLink
ObjectLink

API reference to the object

>
{String}</ObjectLink>
13
          <ItemId
ItemId

Item-number of the object

>
{Integer}</ItemId>
14
          <ItemType
ItemType

Type of item

>
{String}</ItemType>
15
          <ItemLink
ItemLink

API reference to the item

>
{String}</ItemLink>
16
          <RamBaseKey
RamBaseKey

Internal RamBase identifier of the object/item

>
{String}</RamBaseKey>
17
     </CreatedFor>
18
     <ApiOperation>
19
          <ApiOprationId
ApiOprationId

Api operation identifiers

>
{Integer}</ApiOprationId>
20
          <ApiOperationLink
ApiOperationLink

Api operation reference

>
{String}</ApiOperationLink>
21
     </ApiOperation>
22
     <ObjectReference>
23
          <ObjectId
ObjectId

Identifier of the object

>
{String}</ObjectId>
24
          <ObjectType
ObjectType

Type of object

>
{String}</ObjectType>
25
          <ObjectLink
ObjectLink

API reference to the object

>
{String}</ObjectLink>
26
          <ItemId
ItemId

Item-number of the object

>
{Integer}</ItemId>
27
          <ItemType
ItemType

Type of item

>
{String}</ItemType>
28
          <ItemLink
ItemLink

API reference to the item

>
{String}</ItemLink>
29
          <RamBaseKey
RamBaseKey

Internal RamBase identifier of the object/item

>
{String}</RamBaseKey>
30
     </ObjectReference>
31
     <Error>
32
          <Message
Message

Full error message/description. The message is generated from the specified ErrorMessage object, expanded with the given parameter(s).

>
{String}</Message>
33
          <TranslatedMessage
TranslatedMessage

Full translated error description. The language used is specified either in $lang or by user settings. If error message don't exist in desired language, english will be used.

>
{String}</TranslatedMessage>
34
          <StackTrace
StackTrace

Stack trace for details about the error

>
{String}</StackTrace>
35
          <ErrorMessage
ErrorMessage

Contains a reference to the error message, if an error occured

>
36
               <ErrorMessageId
ErrorMessageId

Error message identifier

>
{Integer}</ErrorMessageId>
37
               <ErrorMessageLink
ErrorMessageLink

Error message reference

>
{String}</ErrorMessageLink>
38
          </ErrorMessage>
39
          <Parameters>
40
               <Parameter>
41
                    <Index
Index

Error Key

>
{Integer}</Index>
42
                    <Value
Value

Value of the error parameter

>
{String}</Value>
43
               </Parameter>
44
          </Parameters>
45
          <InnerErrors>
46
               <Error>
47
                    <Message
Message

Full error message/description. The message is generated from the specified ErrorMessage object, expanded with the given parameter(s).

>
{String}</Message>
48
                    <TranslatedMessage
TranslatedMessage

Full translated error description. The language used is specified either in $lang or by user settings. If error message don't exist in desired language, english will be used.

>
{String}</TranslatedMessage>
49
                    <StackTrace
StackTrace

Stack trace for details about the error

>
{String}</StackTrace>
50
                    <ErrorMessage
ErrorMessage

Contains a reference to the error message, if an error occured

>
51
                         <ErrorMessageId
ErrorMessageId

Error message identifier

>
{Integer}</ErrorMessageId>
52
                         <ErrorMessageLink
ErrorMessageLink

Error message reference

>
{String}</ErrorMessageLink>
53
                    </ErrorMessage>
54
                    <Parameters>
55
                         <Parameter>
56
                              <Index
Index

Error Key

>
{Integer}</Index>
57
                              <Value
Value

Value of the error parameter

>
{String}</Value>
58
                         </Parameter>
59
                    </Parameters>
60
               </Error>
61
          </InnerErrors>
62
     </Error>
63
     <ResultValues>
64
          <ResultValue>
65
               <Key
Key

Key of the result value

>
{String}</Key>
66
               <Value
Value

Value of the result value

>
{String}</Value>
67
          </ResultValue>
68
     </ResultValues>
69
     <SystemJob
SystemJob

Contains a reference to the system job, if a system job was started

>
70
          <ObjectId
ObjectId

{OIN.ObjectId}

>
{Integer}</ObjectId>
71
          <ObjectType
ObjectType

Type of object

>
{String}</ObjectType>
72
          <PercentComplete
PercentComplete

Percent complete

>
{Integer}</PercentComplete>
73
          <ObjectLink
ObjectLink

API reference to the object

>
{String}</ObjectLink>
74
     </SystemJob>
75
     <OperationInstanceLink
OperationInstanceLink

Operation instance reference

>
{String}</OperationInstanceLink>
76
</OperationInstance>
1
{
2
     "operationInstance": {
3
          "operationInstanceId
OperationInstanceId

Operation instance identifier

":
"{Integer}",
4
          "status
Status

Status of the instance, 2 = started, 7 = error, 9 = finished

":
"{Integer}",
5
          "createdAt
CreatedAt

Date and time the operation instance was created

":
"{Datetime}",
6
          "createdBy
CreatedBy

Reference to the creator

":
{
7
               "userId
UserId

User identifier

":
"{Integer}",
8
               "userLink
UserLink

User reference

":
"{String}"
9
          },
10
          "createdFor": {
11
               "objectId
ObjectId

Identifier of the object

":
"{String}",
12
               "objectType
ObjectType

Type of object

":
"{String}",
13
               "objectLink
ObjectLink

API reference to the object

":
"{String}",
14
               "itemId
ItemId

Item-number of the object

":
"{Integer}",
15
               "itemType
ItemType

Type of item

":
"{String}",
16
               "itemLink
ItemLink

API reference to the item

":
"{String}",
17
               "ramBaseKey
RamBaseKey

Internal RamBase identifier of the object/item

":
"{String}"
18
          },
19
          "apiOperation": {
20
               "apiOprationId
ApiOprationId

Api operation identifiers

":
"{Integer}",
21
               "apiOperationLink
ApiOperationLink

Api operation reference

":
"{String}"
22
          },
23
          "objectReference": {
24
               "objectId
ObjectId

Identifier of the object

":
"{String}",
25
               "objectType
ObjectType

Type of object

":
"{String}",
26
               "objectLink
ObjectLink

API reference to the object

":
"{String}",
27
               "itemId
ItemId

Item-number of the object

":
"{Integer}",
28
               "itemType
ItemType

Type of item

":
"{String}",
29
               "itemLink
ItemLink

API reference to the item

":
"{String}",
30
               "ramBaseKey
RamBaseKey

Internal RamBase identifier of the object/item

":
"{String}"
31
          },
32
          "error": {
33
               "message
Message

Full error message/description. The message is generated from the specified ErrorMessage object, expanded with the given parameter(s).

":
"{String}",
34
               "translatedMessage
TranslatedMessage

Full translated error description. The language used is specified either in $lang or by user settings. If error message don't exist in desired language, english will be used.

":
"{String}",
35
               "stackTrace
StackTrace

Stack trace for details about the error

":
"{String}",
36
               "errorMessage
ErrorMessage

Contains a reference to the error message, if an error occured

":
{
37
                    "errorMessageId
ErrorMessageId

Error message identifier

":
"{Integer}",
38
                    "errorMessageLink
ErrorMessageLink

Error message reference

":
"{String}"
39
               },
40
               "parameters": [
41
                    {
42
                         "index
Index

Error Key

":
"{Integer}",
43
                         "value
Value

Value of the error parameter

":
"{String}"
44
                    }
45
               ],
46
               "innerErrors": [
47
                    {
48
                         "message
Message

Full error message/description. The message is generated from the specified ErrorMessage object, expanded with the given parameter(s).

":
"{String}",
49
                         "translatedMessage
TranslatedMessage

Full translated error description. The language used is specified either in $lang or by user settings. If error message don't exist in desired language, english will be used.

":
"{String}",
50
                         "stackTrace
StackTrace

Stack trace for details about the error

":
"{String}",
51
                         "errorMessage
ErrorMessage

Contains a reference to the error message, if an error occured

":
{
52
                              "errorMessageId
ErrorMessageId

Error message identifier

":
"{Integer}",
53
                              "errorMessageLink
ErrorMessageLink

Error message reference

":
"{String}"
54
                         },
55
                         "parameters": [
56
                              {
57
                                   "index
Index

Error Key

":
"{Integer}",
58
                                   "value
Value

Value of the error parameter

":
"{String}"
59
                              }
60
                         ]
61
                    }
62
               ]
63
          },
64
          "resultValues": [
65
               {
66
                    "key
Key

Key of the result value

":
"{String}",
67
                    "value
Value

Value of the result value

":
"{String}"
68
               }
69
          ],
70
          "systemJob
SystemJob

Contains a reference to the system job, if a system job was started

":
{
71
               "objectId
ObjectId

{OIN.ObjectId}

":
"{Integer}",
72
               "objectType
ObjectType

Type of object

":
"{String}",
73
               "percentComplete
PercentComplete

Percent complete

":
"{Integer}",
74
               "objectLink
ObjectLink

API reference to the object

":
"{String}"
75
          },
76
          "operationInstanceLink
OperationInstanceLink

Operation instance reference

":
"{String}"
77
     }
78
}

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 100141 HTTP 404 Country not found
Error 104869 HTTP 404 Default account not found
Error 106110 HTTP 400 External work items (type WX) are not allowed
Error 106448 HTTP 400 A sales order item for product of type project order (WP) cannot be splitted into several items
Error 106476 HTTP 400 This type of product (WP) can only be changed into a product of the same type
Error 105749 HTTP 400 Recurring price type should be specified for subscription and rental items
Error 107893 HTTP 400 Quantity for subscription or rental items must be natural number
Error 105819 HTTP 400 Expected end date is required for subscription and rental items
Error 106408 HTTP 403 You have no permission to create subscription item in sales order
Error 105784 HTTP 400 Only subscription products can be added to subscription items
Error 107055 HTTP 400 The rental date can only be set back {0} days
Error 106957 HTTP 400 Only rental or subscription products can be used in recurring contract's lines
Error 106962 HTTP 400 Product of this type (WP) cannot be added to this type of sales order
Error 108856 HTTP 400 Rate change type not found
Error 108352 HTTP 400 Stage of rental contract item not found
Error 108474 HTTP 400 Quote reference is required for quote item
Error 101040 HTTP 400 Quantity must be filled in to create a new item
Error 108670 HTTP 400 Discount percentage must be a number between 0 and 100
Error 105743 HTTP 400 Start date is required
Error 108676 HTTP 400 Effective date cannot be earlier than the effective date of the contract
Error 109546 HTTP 400 Changing effective date is not allowed at this point
Error 104971 HTTP 400 The start date cannot be later than the end date
Error 103491 HTTP 400 Invalid expiration date
Error 108679 HTTP 400 Expected check-in date cannot be earlier then expected check-out date
Error 108262 HTTP 404 Recurring rate not found
Error 108691 HTTP 400 Recurring rate is not active
Error 108018 HTTP 400 Currency mismatch
Error 108016 HTTP 400 Product id mismatch
Error 108824 HTTP 400 Cannot apply recurring rate as it is not valid for selected period
Error 109556 HTTP 400 Effective date can not be earlier than quote's expiration date
Error 108671 HTTP 400 The effective date cannot be changed because earlier days have already been invoiced
Error 108684 HTTP 400 The expiration date cannot be changed because later days have already been invoiced
Error 108683 HTTP 400 Termination date must be earlier then the expiration date
Error 109306 HTTP 400 Shipping details can only be updated until an item is shipped
Error 109467 HTTP 400 The rental unit is not available to non-owners for the selected period
Error 109315 HTTP 400 Rental unit is not available within given period