Update scheduling attributes

post

/fscmRestApi/resources/11.13.18.05/salesOrdersForOrderHub/action/updateSchedulingAttribute

Updates 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.

Request

Header Parameters
  • 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".
  • 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.
Supported Media Types
Request Body - application/vnd.oracle.adf.action+json ()
Root Schema : schema
Type: object
Show Source
  • 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
    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.
Nested Schema : updateSchedulingAttributeRequest
Type: array
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.
Show Source
Nested Schema : items
Type: object
Additional Properties Allowed
Show Source
Back to Top

Response

Supported Media Types

Default Response

The following table describes the default response for this task.
Body ()
Root Schema : schema
Type: object
Show Source
  • 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.
Nested Schema : result
Type: array
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.
Show Source
Nested Schema : items
Type: object
Additional Properties Allowed
Show Source
Back to Top

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

The following example includes the contents of the response body in JSON format:
{
    "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

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": 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"
        }
    ]
}
Back to Top