Update scheduling attributes
/fscmRestApi/resources/11.13.18.05/salesOrdersForOrderHub/action/updateSchedulingAttribute
Request
-
Metadata-Context:
If the REST API supports runtime customizations, the shape of the service may change during runtime. The REST client may isolate itself from these changes or choose to interact with the latest version of the API by specifying this header. For example: Metadata-Context:sandbox="TrackEmployeeFeature".
-
REST-Framework-Version:
The protocol version between a REST client and service. If the client does not specify this header in the request the server will pick a default version for the API.
- application/vnd.oracle.adf.action+json
object
-
processRequestOfflineAfter: number
Time, in seconds, after which the control is passed back to the calling client and the update scheduling attribute request continues in the background.
-
updateSchedulingAttributeRequest: array
updateSchedulingAttributeRequest
Required attributes for the Update scheduling attribute request include FulfillLineId and at least one of the scheduling attributes. Specify a substitute item in InventoryItemId or ProductNumber, or ProductDescription to substitute an item and an empty value or value null in the ShipSetName attribute to remove a fulfillment line from a shipment set.
array
-
Array of:
object items
Additional Properties Allowed: additionalProperties
Response
- application/json
- application/vnd.oracle.adf.actionresult+json
Default Response
object
-
result(required): array
result
The RequestStatus attribute in the Update scheduling attribute response contains the status of the Update scheduling attribute request. It can have three values: SUCCESS or ERROR or PROCESSING. In the case of an ERROR, the Message attribute contains the actual error message. In the case of PROCESSING, the Message attribute contains a message indicating that the request is being processed offline.
In addition to the RequestStatus and Message attributes, the Update scheduling attribute response also contains the HeaderId, FulfillLineId, SourceOrderNumber, SourceLineNumber, and FulfillLineNumber.
array
In addition to the RequestStatus and Message attributes, the Update scheduling attribute response also contains the HeaderId, FulfillLineId, SourceOrderNumber, SourceLineNumber, and FulfillLineNumber.
-
Array of:
object items
Additional Properties Allowed: additionalProperties
Examples
These examples describes how to update fulfillment lines across sales orders without having to revise the orders. You can update scheduling attributes, substitute items, or remove fulfillment lines from a shipment set. This service sets the OverrideScheduleDateFlag attribute to true when you update the fulfillment lines.
Example cURL Command
Use the following cURL command to submit a request on the REST resource.
curl -u username:password -X POST -H "Content-Type:application/vnd.oracle.adf.action+json" -d 'request payload' "https://servername/fscmRestApi/resources/version/salesOrdersForOrderHub/action/updateSchedulingAttribute"
Example Number | Description |
---|---|
Example 1 | Substitute an item on a fulfillment line. |
Example 2 | Substitute an item with a substitute reason and update the scheduled dates on a fulfillment line in a single request. |
Example 3 | Update multiple scheduling attributes with a scheduling reason on a fulfillment line. |
Example 4 | Update multiple scheduling attributes on fulfillment lines belonging to multiple orders in a single request. |
Example 5 | Update scheduled dates and warehouse on the fulfillment lines of a model. |
Example 6 | Update scheduled dates and the warehouse on fulfillment lines of a shipment set. |
Example 7 | Update a fulfillment line to change the source from warehouse to supplier. The fulfillment flow of the line changes from a standard to a drop ship flow. |
Example 8 | Remove a fulfillment line from a shipment set. |
Example 9 | Remove a fulfillment line from a shipment set and update the warehouse and the scheduled dates in a single request. |
Example 10 | Update scheduled dates and the source on multiple fulfillment lines with the processRequestOfflineAfter attribute set to a non-default value so that the request is processed offline. |
Example 11 | Demonstrates an exception scenario in which a new item on a fulfillment line in a request isn't a substitute for the original item on the line. |
Example 12 | Demonstrates an exception scenario in which all the lines in a shipment set are not sent in the request to update scheduling attributes. |
Example 1
This example describes how to substitute an item on a fulfillment line.
Example 1 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580374153, "ProductNumber": "SCH_STD_02" } ] }
Example 1 Response Body
{ "result": [ { "RequestStatus": "SUCCESS", "HeaderId": "300100580374151", "FulfillLineId": "300100580374153", "SourceOrderNumber": "522186", "SourceLineNumber": "1", "FulfillLineNumber": "1" } ] }
Example 2
This example describes how to substitute an item with a substitute reason and update the scheduled dates on a fulfillment line in a single request.
Example 2 Request Body
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580374155, "ProductNumber": "OM-RT-Standard-Item11", "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "SubstituteReason": "Incorrect Product" } ] }
Example 2 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "SUCCESS", "HeaderId": "300100580374151", "FulfillLineId": "300100580374155", "SourceOrderNumber": "522186", "SourceLineNumber": "2", "FulfillLineNumber": "1" } ] }
Example 3
This example describes how to update multiple scheduling attributes with a scheduling reason on a fulfillment line.
Example 3 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580383568, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "FulfillmentOrganizationCode": "M2", "ShippingCarrier": "DHL", "ShippingMode": "Parcel", "ShippingServiceLevel": "Express", "SchedulingReason": "Customer Escalation" } ] }
Example 3 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "SUCCESS", "HeaderId": "300100580383562", "FulfillLineId": "300100580383568", "SourceOrderNumber": "522218", "SourceLineNumber": "3", "FulfillLineNumber": "1" } ] }
Example 4
This example describes how to update multiple scheduling attributes on fulfillment lines belonging to multiple orders in a single request.
Example 4 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580374173, "SupplierName": "DS_BVT_Supplier2", "SupplierSiteName": "DS_BVT2_Site2" }, { "FulfillLineId": 300100580383570, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "DemandClass": "West-GOP" } ] }
Example 4 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "SUCCESS", "HeaderId": "300100580374151", "FulfillLineId": "300100580374173", "SourceOrderNumber": "522186", "SourceLineNumber": "7", "FulfillLineNumber": "1" }, { "RequestStatus": "SUCCESS", "HeaderId": "300100580383562", "FulfillLineId": "300100580383570", "SourceOrderNumber": "522218", "SourceLineNumber": "4", "FulfillLineNumber": "1" } ] }
Example 5
This example describes how to update scheduled dates and warehouse on the fulfillment lines of a model.
Example 5 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580383574, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "FulfillmentOrganizationCode": "M2" }, { "FulfillLineId": 300100580383576, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "FulfillmentOrganizationCode": "M2" }, { "FulfillLineId": 300100580383578, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "FulfillmentOrganizationCode": "M2" }, { "FulfillLineId": 300100580383580, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "FulfillmentOrganizationCode": "M2" }, { "FulfillLineId": 300100580383582, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "FulfillmentOrganizationCode": "M2" } ] }
Example 5 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "SUCCESS", "HeaderId": "300100580383562", "FulfillLineId": "300100580383574", "SourceOrderNumber": "522218", "SourceLineNumber": "6", "FulfillLineNumber": "1" }, { "RequestStatus": "SUCCESS", "HeaderId": "300100580383562", "FulfillLineId": "300100580383576", "SourceOrderNumber": "522218", "SourceLineNumber": "6.1", "FulfillLineNumber": "1" }, { "RequestStatus": "SUCCESS", "HeaderId": "300100580383562", "FulfillLineId": "300100580383578", "SourceOrderNumber": "522218", "SourceLineNumber": "6.1.1", "FulfillLineNumber": "1" }, { "RequestStatus": "SUCCESS", "HeaderId": "300100580383562", "FulfillLineId": "300100580383580", "SourceOrderNumber": "522218", "SourceLineNumber": "6.2", "FulfillLineNumber": "1" }, { "RequestStatus": "SUCCESS", "HeaderId": "300100580383562", "FulfillLineId": "300100580383582", "SourceOrderNumber": "522218", "SourceLineNumber": "6.3", "FulfillLineNumber": "1" } ] }
Example 6
This example describes how to update scheduled dates and the warehouse on fulfillment lines of a shipment set.
Example 6 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580374159, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "FulfillmentOrganizationCode": "M2" }, { "FulfillLineId": 300100580374161, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "FulfillmentOrganizationCode": "M2" } ] }
Example 6 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "SUCCESS", "HeaderId": "300100580374151", "FulfillLineId": "300100580374159", "SourceOrderNumber": "522186", "SourceLineNumber": "4", "FulfillLineNumber": "1" }, { "RequestStatus": "SUCCESS", "HeaderId": "300100580374151", "FulfillLineId": "300100580374161", "SourceOrderNumber": "522186", "SourceLineNumber": "5", "FulfillLineNumber": "1" } ] }
Example 7
This example describes how to update a fulfillment line to change the source from warehouse to supplier. The fulfillment flow of the line changes from a standard to a drop ship flow.
Example 7 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580542221, "FulfillmentOrganizationCode": null, "SupplierName": "DS_BVT_Supplier1", "SupplierSiteName": "DS_BVT1_Site1" } ] }
Example 7 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "SUCCESS", "HeaderId": "300100580542219", "FulfillLineId": "300100580542221", "SourceOrderNumber": "522319", "SourceLineNumber": "1", "FulfillLineNumber": "1" } ] }
Example 8
This example describes how to remove a fulfillment line from a shipment set.
Example 8 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580374157, "ShipSetName": null } ] }
Example 8 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "SUCCESS", "HeaderId": "300100580374151", "FulfillLineId": "300100580374157", "SourceOrderNumber": "522186", "SourceLineNumber": "3", "FulfillLineNumber": "1" } ] }
Example 9
This example describes how to remove a fulfillment line from a shipment set and update the warehouse and the scheduled dates in a single request.
Example 9 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580396278, "ShipSetName": null, "ScheduleArrivalDateTime": "2023-07-31T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-28T23:59:59+00:00", "FulfillmentOrganizationCode": "M2" } ] }
Example 9 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "SUCCESS", "HeaderId": "300100580396276", "FulfillLineId": "300100580396278", "SourceOrderNumber": "522238", "SourceLineNumber": "1", "FulfillLineNumber": "1" } ] }
Example 10
This example describes how to update scheduled dates and the source on multiple fulfillment lines with the processRequestOfflineAfter attribute set to a non-default value so that the request is processed offline.
Example 10 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 0, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580383584, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "SupplierName": "DS_BVT_Supplier2", "SupplierSiteName": "DS_BVT2_Site2" }, { "FulfillLineId": 300100580383572, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "FulfillmentOrganizationCode": "M2" } ] }
Example 10 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "PROCESSING", "Message": "Order management is processing your request to split or update the fulfillment line in your order. Query for source order 522218 to monitor your request. (FOM-4515652)", "HeaderId": "300100580383562", "FulfillLineId": "300100580383584", "SourceOrderNumber": "522218", "SourceLineNumber": "7", "FulfillLineNumber": "1" }, { "RequestStatus": "PROCESSING", "Message": "Order management is processing your request to split or update the fulfillment line in your order. Query for source order 522218 to monitor your request. (FOM-4515652)", "HeaderId": "300100580383562", "FulfillLineId": "300100580383572", "SourceOrderNumber": "522218", "SourceLineNumber": "5", "FulfillLineNumber": "1" } ] }
Example 11
This example demonstrates an exception scenario in which a new item on a fulfillment line in a request isn't a substitute for the original item on the line.
Example 11 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580396282, "ProductNumber": "AS54888" } ] }
Example 11 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "ERROR", "Message": "You can't use the AS54888 item as a substitute for the OM-RT-Standard-Item4 item on the order line because you haven't set up the AS54888 item as a substitute. (FOM-4515630) Details: Set up the AS54888 item so you can use it as a substitute for the OM-RT-Standard-Item4 item. For details, see the Set Up Item Substitution in Order Management topic on Oracle Help Center.", "HeaderId": "300100580396276", "FulfillLineId": "300100580396282", "SourceOrderNumber": "522238", "SourceLineNumber": "3", "FulfillLineNumber": "1" } ] }
Example 12
This example demonstrates an exception scenario in which all the lines in a shipment set are not sent in the request to update scheduling attributes.
Example 12 Request Body
The following example includes the contents of the request body in JSON format. You replace the request payload in the cURL command with the contents of the Example Request Body. The request payload specifies attribute values that the command will use in the record that it updates.
{ "processRequestOfflineAfter": 240, "updateSchedulingAttributeRequest": [ { "FulfillLineId": 300100580374159, "ScheduleArrivalDateTime": "2023-07-28T23:59:59+00:00", "ScheduleShipDateTime": "2023-07-26T23:59:59+00:00", "FulfillmentOrganizationCode": "M2", "ShipSetName": "SS2" } ] }
Example 12 Response Body
The following example includes the contents of the response body in JSON format:
{ "result": [ { "RequestStatus": "ERROR", "Message": "You can't split or update the order line because your request doesn't include all the items that are part of the configured item, kit, or shipment set. (FOM-4515599) Details: Make sure your request includes all of the items that are part of the configured item, kit, or shipment set, then resend your request.", "HeaderId": "300100580374151", "FulfillLineId": "300100580374159", "SourceOrderNumber": "522186", "SourceLineNumber": "4", "FulfillLineNumber": "1" } ] }