How do you format the JSON body for a Transfer Receipt REST web services call?

I'm trying to use the Contract based web services to retrieve Transfer Receipts. I've extended the endpoint for PurchaseReceipt (Endpoint name is POTransfer) to add TransferOrderNbr, TransferType, and TransferShipmentNbr (The endpoint object is PurchaseReceiptEx). The Call I'm using works for 2018 R1, but in a site that's been upgraded to 2021 R1, Using Postman, the PUT call to the Endpoint returns errors.

enter image description here

Here is the call:

https://<base URL>/entity/POTransfer/17.200.001/PurchaseReceiptEx?Expand=Details

And here is the JSON payload / body I'm using:

{
"Type": {
    "value": "Transfer Receipt"
},
"Warehouse": {
    "value": "SOV-3RD"
},
"Details": [
    {
        "Location": {
            "value": "QC41"
        },
        "TransferOrderNbr": {
            "value": "SO00011242"
        },
        "TransferOrderType": {
            "value": "TR"
        },
        "TransferShipmentNbr": {
            "value": "011736"
        }
    }
]
}

The error I'm getting is:

"exceptionMessage": "PurchaseReceipt.VendorID: 'Vendor' cannot be empty.\n'VendorID' cannot be empty.\nVendorID: 'VendorID' cannot be empty.",

So, I guess the bottom line is - how do I format the body for this call without getting errors?


After playing with this a bit and trying all my tricks, I believe this might just be an error with the 17.200.001 endpoint. I tried this with 17.200.001, 18.200.001 and 20.200.001 endpoint versions and your call format worked with both 18.200.001 and 20.200.001. Along with what Brian said, probably best to just upgrade.